Você pode impedir valores duplicados em um campo em uma tabela access criando um índice exclusivo. Um índice exclusivo é um índice que exige que cada valor do campo indexado seja exclusivo.
Há duas maneiras básicas de criar um índice exclusivo:
-
Defina a propriedade Indexada do campo como Sim (Sem duplicatas) Você pode fazer isso abrindo a tabela no modo Design. Esse método é fácil e uma boa escolha se você quiser apenas alterar um campo de cada vez.
-
Criar um consulta de definição de dados que crie o índice exclusivo Você pode fazer isso usando modo SQL. Esse método não é tão fácil quanto usar o modo design, mas tem uma vantagem: você pode salvar a consulta de definição de dados e usá-la novamente mais tarde. Isso será útil se você excluir e recriar tabelas periodicamente e quiser usar índices exclusivos em alguns dos campos.
O que você deseja fazer?
Defina a propriedade Indexada de um campo como Sim (Sem duplicatas)
-
No Painel de Navegação, clique com o botão direito do mouse na tabela que contém o campo e clique em Exibição de Design.
-
Selecione o campo que você deseja garantir que tenha valores exclusivos.
-
No painel Propriedades de Campo na parte inferior da exibição de design da tabela, na guia Geral , defina a propriedade Indexada como Sim (Sem duplicatas).
-
Salve as alterações na tabela.
Observação: Se duplicatas já existirem no campo para seus registros de tabela, o Access exibirá uma mensagem de erro (Erro 3022) ao tentar salvar as alterações de tabela com o novo índice. Você precisará remover esses valores de campo duplicados dos registros de tabela antes de poder definir e salvar o novo índice exclusivo.
Criar um índice exclusivo para um campo usando uma consulta de definição de dados
-
Na guia Criar, no grupo Consultas, clique em Design da Consulta.
-
Na guia Design para consultas, no grupo Resultados , clique na seta em Exibir e clique em Exibição SQL.
-
Exclua todo o SQL existente da consulta. (O acesso provavelmente apenas exibe SELECT; antes de excluir o texto existente.)
-
Digite ou cole o seguinte SQL na consulta:
CREATE UNIQUE INDEX index_name
ON table (field); -
No SQL, substitua as variáveis da seguinte maneira:
-
Substitua index_name por um nome para seu índice. É uma boa ideia usar um nome que ajuda você a determinar para que serve o índice. Por exemplo, se o índice for para garantir que os números de telefone sejam exclusivos, você poderá nomeá-lo unique_phone.
-
Substitua a tabela pelo nome da tabela que contém o campo a ser indexado. Se o nome da tabela tiver espaços ou caracteres especiais, você deverá incluir o nome em colchetes.
-
Substitua o campo pelo nome do campo a ser indexado. Se o nome do campo tiver espaços ou caracteres especiais, você deverá incluir o nome em colchetes.
-
-
Salve e feche a consulta.
-
Execute a consulta para criar o índice. Observe que você pode executar a consulta de uma macro usando a ação de macro RunSQL.