Quando um esquema de relação tem várias chaves candidatas, a escolha de uma para se tornar a chave primária é um tanto quanto arbitrária; porém, normalmente é melhor escolher uma chave primária com um único atributo ou um pequeno número de atributos.

As outras chaves candidatas são designadas como chaves únicas (unique keys). Ao tornar um atributo único, ele passa a não permitir valores duplicados. Por exemplo: se você disser que o atributo nome da entidade Aluno é único, então não será possível cadastrar dois alunos com mesmo nome.

Outra restrição sobre os atributos especifica se valores nulos são permitidos ou não. Por exemplo, se cada tupla de ALUNO precisar ter um valor válido, diferente de nulo, para o atributo Nome, então Nome de ALUNO é restrito a ser NOT NULL.

Independentemente de muitas relações possuírem chaves candidatas, é comum os projetistas de bancos de dados sempre criarem um campo de identificação sequencial em todas as tabelas que representem entidades (a exceção são as tabelas que representam associações, cuja chave é a composição das chaves das entidades que elas representam). O objetivo das chaves numéricas sequenciais é facilitar a programação e a manutenção dos dados pelos administradores de dados. Geralmente esse campo recebe o nome de ID ou Código.
Copyright © 2014 AIEC.