Diferença entre a chave primária e a chave exclusiva

Anonim

Chave primária versus chave exclusiva

Uma coluna ou um conjunto de colunas, que pode ser usado para identificar ou acessar uma linha ou um conjunto de linhas em um banco de dados é chamado de chave. Uma chave única é uma chave que pode identificar uma linha de uma tabela exclusivamente no contexto de bancos de dados relacionais. Uma única chave é composta por uma única coluna ou um conjunto de colunas. Uma chave primária também é uma combinação de colunas em uma tabela que identifica de maneira exclusiva uma linha. Mas é considerado um caso especial da chave única.

O que é Unique Key?

Como mencionado anteriormente, a chave única é uma única coluna ou conjunto de colunas que podem identificar uma linha de uma tabela de forma exclusiva. Portanto, uma chave única é restrita, de modo que não há dois valores iguais. Uma propriedade importante é que as chaves exclusivas não aplicam a restrição NOT NULL. Uma vez que NULL representa a falta de um valor, se duas linhas tiverem NULL em uma coluna, isso não significa que os valores sejam iguais. A coluna definida como uma chave exclusiva permite apenas um único valor NULL nessa coluna. Então, isso pode ser usado para identificar essa linha particular de forma exclusiva. Por exemplo, em uma tabela que contém informações do aluno, a ID do aluno pode ser definida como uma chave exclusiva. Uma vez que não há dois alunos podem ter a mesma identificação, identifica de forma única um único aluno. Portanto, a coluna ID do estudante satisfaz todas as propriedades de uma chave exclusiva. Dependendo do design de um banco de dados, uma tabela pode ter mais de uma chave única.

O que é chave primária?

A chave primária também é uma coluna ou uma combinação de colunas que define de forma exclusiva uma linha em uma tabela de um banco de dados relacional. Uma tabela pode ter no máximo uma chave primária. A chave primária impõe a restrição implícita NOT NULL. Portanto, uma coluna que é definida como a chave primária não pode ter valores NULL nele. A chave primária pode ser um atributo normal na tabela que é garantida como única, como o número de segurança social ou pode ser um valor exclusivo gerado pelo sistema de gerenciamento de banco de dados, como um identificador exclusivo global (GUID) no Microsoft SQL Server. As chaves primárias são definidas através da restrição PRIMARY KEY no ANSI SQL Standard. A chave primária também pode ser definida ao criar a tabela. O SQL permite que a chave primária seja composta por uma ou mais colunas e cada coluna incluída na chave primária está definida de forma implícita como NOT NULL. Mas alguns sistemas de gerenciamento de banco de dados exigem que as colunas das chaves primárias sejam explicitamente NÃO NULL.

Diferença entre a chave primária e a chave exclusiva

Embora a chave primária e a chave exclusiva sejam uma ou mais colunas que possam identificar uma linha de uma tabela de forma exclusiva, elas têm algumas diferenças importantes. Mais importante ainda, uma tabela pode ter apenas uma única chave primária enquanto pode ter mais de uma chave exclusiva.A chave primária pode ser considerada como um caso especial da chave exclusiva. Outra diferença é que as chaves primárias têm uma restrição implícita NOT NULL enquanto a chave exclusiva não possui essa restrição. Portanto, colunas de chave únicas podem ou não conter valores NULL, mas as colunas de chave primária não podem conter valores NULL.