Conceitos básicos de integridade dos dados
A primeira etapa para especificar os domínios de uma tabela é determinar tipos de dados de coluna. Um domínio é o conjunto de todos os valores permitidos em uma coluna. Um domínio não só inclui o conceito de impor tipos de dados, mas também os valores permitidos na coluna. Por exemplo, o domínio para a coluna Cor da tabela Production.Product inclui o tipo de dados nvarchar e um tamanho limite de 15 caracteres. O domínio pode também especificar a cadeia de caracteres permitida na coluna, tais como Vermelho, Azul, Verde, Amarelo, Marrom, Preto, Branco, Azul petróleo, Cinza e Prata. Para obter mais informações, consulte Tipos de dados (Mecanismo de Banco de Dados).
Valores nulos
As colunas podem aceitar ou podem rejeitar valores nulos. NULL é um valor especial em bancos de dados que representa o conceito de um valor desconhecido. NULL é diferente de um caractere em branco ou 0. Espaço em branco é, de fato, um caractere válido e 0 é um número válido. NULL apenas representa a idéia de que nós não sabemos o que este valor é. NULL também é diferente de uma cadeia de comprimento zero. Se uma definição de coluna contiver a cláusula NOT NULL, você não poderá inserir linhas que tenham o valor NULL para aquela linha. Se a definição de coluna tiver apenas a palavra-chave NULL, ela aceitará valores nulos.
Permitir valores nulos em uma coluna pode aumentar a complexidade de qualquer comparação lógica que usa a coluna. O padrão ISO instrui que qualquer comparação com NULL não avalia para TRUE ou FALSE, ela avalia para UNKNOWN. Isso apresenta lógica de três valores aos operadores de comparação que podem ser difíceis de gerenciar corretamente.
Restrições, regras, padrões e gatilhos
Colunas de tabela têm propriedades além de tipo de dados e de tamanho. Essas outras propriedades são partes importantes para garantir a integridade dos dados e a integridade referencial das tabelas em um banco de dados.
A integridade dos dados diz respeito a cada ocorrência de uma coluna que tem um valor de dados correto. Os valores de dados devem ser do tipo de dados certo e no domínio correto.
A integridade referencial indica que foram mantidas as relações entre tabelas corretamente. Os dados em uma tabela devem indicar somente linhas existentes em outra tabela e não linhas que não existem.
Os objetos a seguir são usados para manter ambos os tipos de integridade: