Uma chave primária é um campo ou conjunto de campos com valores exclusivos por toda a tabela. Os valores da chave podem ser usados para se referir aos registros inteiros, porque cada registro tem um valor diferente para a chave. Cada tabela só pode ter uma chave primária. O Access pode criar automaticamente um campo de chave primária para você ao criar uma tabela ou você pode especificar os campos que deseja usar como chave primária. Este artigo explica como e por que usar chaves primárias.
Para definir a chave primária de uma tabela, abra a tabela no modo Design. Selecione o campo (ou campos) que você deseja usar e, na faixa de opções, clique em Chave Primária.
Observação: Este artigo destina-se ao uso apenas com bancos de dados da área de trabalho do Access. O Access gerencia automaticamente as chaves primárias de novas tabelas em aplicativos da Web do Access e bancos de dados da Web. Embora seja possível substituir essas chaves primárias automatizadas, não recomendamos que você o faça.
Neste artigo
Visão geral de chaves primárias no Access
O Access usa os campos de chaves primárias para associar rapidamente os dados de várias tabelas e combiná-los de maneira significativa. Você pode incluir os campos de chave primária em outras tabelas para se referir à tabela que é a origem da chave primária. Nessas outras tabelas, os campos são chamados de chaves estrangeiras. Por exemplo, o campo ID do Cliente na tabela Clientes também pode aparecer na tabela Pedidos. Na tabela Clientes, ele é a chave primária. Na tabela Pedidos, ele é chamado de chave estrangeira. Uma chave estrangeira, basicamente, é a chave primária de outra tabela. Para saber mais, veja Noções básicas sobre o design de banco de dados.
1. Chave primária
2. Chave estrangeira
Se você estiver movendo dados existentes para um banco de dados, já terá um campo que poderá usar como a chave primária. Geralmente, um número de identificação exclusivo, como um número de identificação ou um número de série ou código, serve como uma chave primária em uma tabela. Por exemplo, você pode ter uma tabela Clientes em que cada cliente possui um número de identificação do cliente exclusivo. O campo Identificação do Cliente é a chave primária.
O Access cria automaticamente um índice para a chave primária, o que ajuda a agilizar as consultas e outras operações. Ele também garante que cada registro possua um valor no campo de chave primária, e que esse valor seja sempre exclusivo.
Quando você cria uma nova tabela no modo Folha de Dados, o Access cria automaticamente uma chave primária para você e atribui a ela um nome de campo de "ID" e o tipo de dados Numeração Automática.
Quais são as características de uma boa chave primária?
Uma boa candidata a chave primária tem várias características:
-
Identifica com exclusividade cada linha
-
Nunca é vazia ou nula — sempre contém um valor
-
Seus valores raramente (o ideal seria nunca) são alterados
Se você não consegue identificar uma boa chave, crie um campo Numeração Automática para usar como chave. Um campo Numeração Automática gera automaticamente um valor para si quando cada registro é salvo pela primeira vez. Portanto, um campo Numeração Automática atende a todas as três características de uma boa chave primária. Para saber mais sobre a adição do campo Numeração Automática, veja o artigo Adicionar uma chave primária do campo Numeração Automática.
Um campo Numeração Automática compõe uma boa chave primária.
Exemplos de chaves primárias ruins
Qualquer campo sem uma ou mais das características de uma boa candidata a chave é uma opção ruim para uma chave primária. Aqui estão alguns exemplos de campos que seriam chaves primárias ruins para uma tabela Contatos, juntamente com os motivos para tal.
Chave primária ruim |
Motivo |
---|---|
Nome pessoal |
Pode não ser confiavelmente exclusivo e estar sujeito a alteração |
Número de telefone |
Probabilidade de alteração. |
Endereço de email |
Probabilidade de alteração. |
Código postal |
Mais de uma pessoa pode compartilhar um CEP |
Combinações de fatos e números |
A parte relativa aos fatos pode estar sujeita a alterações, gerando um trabalho de manutenção. Pode gerar confusão se a parte relativa aos fatos for repetida como um campo separado. Por exemplo, combinar a cidade e um número incrementado (por exemplo, NOVAYORK0579) será uma opção ruim se a cidade também for armazenada como um campo. |
Cadastro de pessoas físicas |
|
Chaves compostas: uso de vários campos em combinação como uma chave primária
Em alguns casos, você deseja usar dois ou mais campos em uma tabela como chave primária. Por exemplo, uma tabela de Detalhes do Pedido que armazena itens da linha para pedidos pode usar dois campos na chave primária: ID do pedido e ID do produto. Uma chave que possui mais de um campo é chamada de chave composta.
Definir a chave primária usando campos que você já possui no Access
Para que uma chave primária funcione corretamente, o campo deve identificar de maneira exclusiva cada linha, nunca conter um valor vazio ou nulo e raramente (o ideal seria nunca) mudar. Para definir a chave primária:
-
Abra o banco de dados que você deseja modificar.
-
No Painel de Navegação, clique com o botão direito do mouse na tabela em que a chave primária deve ser definida e, no menu de atalho, clique em Modo Design.
Dica: Se o Painel de Navegação não aparecer, pressione F11 para exibi-lo.
-
Selecione o campo ou campos que você deseja usar como a chave primária.
Para selecionar um campo, clique no seletor de linha do campo desejado.
Para selecionar mais de um campo para criar uma chave composta, mantenha pressionada a tecla Ctrl enquanto clica no seletor de linha de cada campo.
-
Na guia Design de Tabela , no grupo Ferramentas , clique em Chave Primária.
Um indicador de chave é adicionado à esquerda do campo ou dos campos especificados como chave primária.
Remover uma chave primária no Access
Ao remover a chave primária, o campo ou campos que anteriormente serviram como chave primária não fornecerão mais o principal meio usado para identificar um registro.
A remoção da chave primária não exclui os campos da sua tabela, mas remove o índice criado para ela.
-
Antes de remover uma chave primária, é preciso ter certeza de que ela não participa de nenhum relacionamento de tabela. Se você tentar remover uma chave primária que faça parte de uma ou mais relações, o Access avisará que é necessário excluir as relações primeiro.
Para excluir uma relação de tabelas, conclua as etapas a seguir:-
Se as tabelas que participam no relacionamento da tabela estiverem abertas, feche-as. Você não pode excluir um relacionamento de tabela entre tabelas abertas.
-
Na guia Ferramentas de Banco de Dados, no grupo Relações, clique em Relações.
-
Selecione Adicionar Tabelas.
-
Clique na linha da relação de tabelas que você deseja excluir (a linha fica em negrito quando é selecionada) e, em seguida, pressione a tecla Delete.
-
Na guia Design de Relações , no grupo Relações , clique em Fechar.
-
-
Após excluir as relações, no Painel de Navegação, clique com o botão direito do mouse na tabela da qual você deseja remover a chave primária e clique em Modo Design.
Dica: Se o Painel de Navegação não aparecer, pressione F11 para exibi-lo.
-
Clique no seletor de linha da chave primária atual.
Se a chave primária consistir em um único campo, clique no seletor de linha desse campo.
Se a chave primária consistir em vários campos, clique no seletor de linha de qualquer campo na chave primária.
-
Na guia Design de Tabela , no grupo Ferramentas , clique em Chave Primária.
O indicador de chave é removido do campo ou campos especificados anteriormente como chave primária.
Observação: Quando você salva uma nova tabela sem definir uma chave primária, o Access solicita que você crie uma. Se você escolher Sim, o Access criará um campo de ID que usa o tipo de dados Numeração Automática para fornecer um valor exclusivo para cada registro. Caso sua tabela já inclua um campo Numeração Automática, o Access o usará como chave primária.
Alterar a chave primária no Access
Siga estas etapas se quiser alterar a chave primária de uma tabela:
-
Remova a chave primária existente seguindo as instruções na seção Remover a chave primária.
-
Defina a chave primária seguindo as instruções na seção Definir a chave primária.
Informações adicionais
Para saber mais sobre design de banco de dados e escolher uma chave primária adequada, confira os artigos: