Embora a chave primária seja selecionada nas chaves candidatas, existe alguma diferença entre a chave primária e as outras chaves candidatas, que serão discutidas em detalhes neste artigo. O design do banco de dados é uma das atividades mais importantes que devem ser realizadas ao manter e armazenar dados. Durante esse processo de design, tabelas diferentes com muitos relacionamentos precisam ser criadas. Para acessar essas tabelas em um banco de dados, tipos diferentes de chaves são usados em linguagens modernas de design de banco de dados, como MYSQL, MSAccess, SQLite etc..
Chave candidata é uma única coluna ou conjunto de colunas em uma tabela de um banco de dados que pode ser usado para identificar exclusivamente qualquer registro do banco de dados sem se referir a outros dados. Cada tabela de um banco de dados pode ter uma ou mais de uma chave candidata. Um conjunto de chaves candidatas pode ser criado usando dependências funcionais. Existem alguns recursos importantes em uma chave candidata. Eles são;
• chaves candidatas devem ser únicas no domínio e não devem conter valores NULL.
• a chave candidata nunca deve mudar e deve conter o mesmo valor para uma ocorrência específica de uma entidade.
O principal objetivo de uma chave candidata é ajudar a identificar uma única linha dentre milhões de linhas em uma grande tabela. Cada chave candidata está qualificada para se tornar uma chave primária. No entanto, de todas as chaves candidatas, a chave candidata mais importante e especial se tornará a chave primária de uma tabela e é a melhor dentre as chaves candidatas..
Uma chave primária é a melhor chave candidata de uma tabela usada para identificar registros exclusivamente que são armazenados em uma tabela. Ao criar uma nova tabela em um banco de dados, é solicitado que você selecione uma chave primária. Portanto, a seleção de uma chave primária para uma tabela é a decisão mais crítica que deve ser tomada por um designer de banco de dados. A restrição mais importante, que deve ser considerada ao decidir uma chave primária, é que a coluna selecionada da tabela deve conter apenas valores exclusivos e não deve conter valores NULL. Algumas das chaves primárias comumente usadas ao projetar tabelas são SSN (Social Security Number), ID e NIC (National Identity Card Number).
O programador deve se lembrar de escolher uma chave primária com cuidado, pois é difícil mudar. Portanto, de acordo com os programadores, a melhor prática de criar uma chave primária é usar uma chave primária gerada internamente, como ID do Registro criada pelo tipo de dados AutoNumeração do MS Access. Se tentarmos inserir um registro em uma tabela com uma chave primária que duplica um registro existente, a inserção falhará. O valor da chave primária não deve continuar mudando; portanto, é mais importante manter uma chave primária estática.
Uma chave primária é a melhor chave candidata.
• Uma chave candidata é a coluna que se qualifica como única, enquanto a chave primária é a coluna que identifica exclusivamente um registro.
• Uma tabela sem chaves candidatas não representa nenhuma relação.
• Pode haver muitas chaves candidatas para uma tabela em um banco de dados, mas deve haver apenas uma chave primária para uma tabela.
• Embora a chave primária seja uma das chaves candidatas, às vezes é a única chave candidata.
• Depois que uma chave primária foi selecionada, as outras chaves candidatas se tornam chaves únicas.
• Praticamente uma chave candidata pode conter valores NULL, embora atualmente não contenha nenhum valor. Portanto, a chave candidata não está qualificada para uma chave primária porque a chave primária não deve conter nenhum valor NULL.
• Também é possível que as chaves candidatas, únicas no momento, possam conter valores duplicados que desqualificam uma chave candidata de se tornar uma chave primária.
Resumo:
Chave candidata e chave primária são chaves essenciais que são usadas no design de bancos de dados para identificar exclusivamente dados em um registro e estabelecer relacionamentos entre as tabelas de um banco de dados. Uma tabela deve conter apenas uma chave primária e pode conter mais de uma chave candidata. Hoje, a maioria dos bancos de dados é capaz de gerar automaticamente sua própria chave primária. Portanto, a chave primária e as chaves candidatas fornecem um suporte numeroso aos sistemas de gerenciamento de banco de dados.
Cortesia de imagens: