Definição – o que significa chave primária?
Uma chave primária é uma coluna da tabela de banco de dados relacional especial (ou combinação de colunas) designada para identificar exclusivamente cada registro da tabela.
Uma chave primária é usada como um identificador exclusivo para analisar rapidamente os dados da tabela. Uma tabela não pode ter mais de uma chave primária.
Os principais recursos de uma chave primária são:
- Deve conter um valor exclusivo para cada linha de dados.
- Não pode conter valores nulos.
- Cada linha deve ter um valor de chave primária.
Uma chave primária pode usar um ou mais campos já presentes no modelo de dados subjacente ou um campo extra específico pode ser criado para ser a chave primária.
Definirtec explica a chave primária
O conceito de chave primária é crítico para um banco de dados relacional eficiente. Sem a chave primária e os conceitos de chave estrangeira intimamente relacionados, os bancos de dados relacionais não funcionariam.
Na verdade, uma vez que uma tabela pode facilmente conter milhares de registros (incluindo duplicatas), uma chave primária é necessária para garantir que um registro da tabela sempre possa ser identificado de forma única.
Todas as chaves que vêm de atributos e observáveis do mundo real são chamadas de chaves primárias naturais, ao contrário de chaves primárias substitutas que são, em vez disso, atribuídas arbitrariamente a cada registro.
Quase todos os indivíduos lidam com chaves primárias naturais com freqüência, mas sem saber, na vida cotidiana.
Por exemplo, os alunos recebem rotineiramente números de identificação (ID) exclusivos e todos os cidadãos dos EUA têm números de Previdência Social atribuídos pelo governo e identificáveis de forma exclusiva. Endereços de rua ou números de carteira de motorista são exemplos de chaves primárias usadas para identificar (respectivamente) locais ou carros de forma exclusiva.
Como outro exemplo, um banco de dados deve conter todos os dados armazenados por um banco comercial. Duas das tabelas do banco de dados incluem o CUSTOMER_MASTER, que armazena dados básicos e estáticos do cliente (nome, data de nascimento, endereço, número do Seguro Social, etc.) e o ACCOUNTS_MASTER, que armazena vários dados de contas bancárias (data de criação da conta, tipo de conta, limites de retirada ou informações de conta correspondentes, etc.).
Para identificar os clientes de forma exclusiva, uma coluna ou combinação de colunas é selecionada para garantir que dois clientes nunca tenham o mesmo valor exclusivo. Assim, certas colunas são eliminadas imediatamente, por exemplo, sobrenome e data de nascimento.
Um bom candidato à chave primária é a coluna designada para conter números do Seguro Social. No entanto, alguns correntistas podem não ter números do Seguro Social, portanto, a candidatura desta coluna é eliminada.
A próxima opção lógica é usar uma combinação de colunas, como adicionar o sobrenome à data de nascimento do endereço de e-mail, resultando em uma chave primária longa e complicada.
A melhor opção é criar uma chave primária separada em uma nova coluna chamada CUSTOMER_ID. Em seguida, o banco de dados gera automaticamente um número único cada vez que um cliente é adicionado, garantindo uma identificação única.
Conforme essa chave é criada, a coluna é designada como a chave primária no script SQL que cria a tabela e todos os valores nulos são rejeitados automaticamente.
O número da conta associado a cada CUSTOMER_ID permite o tratamento seguro de consultas de clientes e tempos de pesquisa rápidos (como em qualquer tabela indexada).
Por exemplo, um cliente pode ser solicitado a fornecer seu sobrenome ao conduzir uma consulta bancária. Uma consulta de sobrenome comum (como Smith) provavelmente retornará vários resultados.
Ao consultar dados, o uso do recurso de exclusividade de chave primária garante um resultado.