Uma chave primária é um campo ou conjunto de campos com valores exclusivos por toda a tabela. Pode fazer referência a registos inteiros com os valores da chave, porque cada registo tem um valor diferente para a chave. Cada tabela só pode ter uma chave primária. O Access pode criar um campo de chave primária automaticamente quando cria uma tabela ou pode especificar os campos que pretende utilizar 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 na vista de Estrutura. Selecione o campo (ou campos) que quer utilizar e, em seguida, no friso, selecione Chave Primária.
Neste artigo
- Visão geral de chaves primárias no Access
- Definir a chave primária usando campos que você já possui no Access
- Remover uma chave primária
- Alterar a chave primária no Access
- Informações adicionais
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 estiver a mover dados existentes para uma base de dados, poderá já ter um campo que utiliza como 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 cada linha de forma exclusiva.
- Nunca está vazia nem é nula , contém sempre um valor.
- Os valores nela contidos raramente (idealmente, nunca) são alterados.
Se não conseguir identificar uma chave adequada, crie um campo de Numeração Automática para utilizar 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 obter mais informações sobre como adicionar um campo de Numeração Automática, consulte Adicionar um campo de Numeração Automática como uma chave primária.
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, poderá querer utilizar dois ou mais campos numa 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 rato na tabela na qual pretende definir a chave primária e, no menu de atalho, selecione Vista de Estrutura.
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, selecione o seletor de linha correspondente ao campo pretendido.
Para selecionar mais do que um campo para criar uma chave composta, mantenha a tecla Ctrl premida e, em seguida, selecione o seletor de linha para cada campo.No separador Estrutura da Tabela , no grupo Ferramentas , selecione 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.
Ao remover a chave primária, não elimina os campos da sua tabela, mas remove o índice que foi criado para a chave primária.
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.
- No separador Ferramentas da Base de Dados , no grupo Relações , selecione Relações.
- Selecione Adicionar tabelas.
- Selecione a linha da relação da tabela para a relação de tabelas que pretende eliminar (a linha fica a negrito quando for selecionada) e, em seguida, prima a tecla DELETE.
- No separador Estrutura das 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 selecione o Modo Design.
Dica
Se o Painel de Navegação não aparecer, pressione F11 para exibi-lo.
Selecione o seletor de linha da chave primária atual.
Se a chave primária consistir em um único campo, selecione o seletor de linha desse campo.
Se a chave primária consistir em vários campos, selecione o seletor de linha para qualquer campo na chave primária.Na guia Design da Tabela , no grupo Ferramentas , selecione 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: