As restrições fazem parte de uma definição de esquema de banco de dados.
Uma restrição geralmente é associada a uma tabela e é criada com um
CREATE CONSTRAINT
ou CREATE ASSERTION
instrução SQL. Eles definem certas propriedades que os dados em um banco de dados devem cumprir. Eles podem se aplicar a uma coluna, uma tabela inteira, mais de uma tabela ou um esquema inteiro. Um sistema de banco de dados confiável garante que as restrições sejam mantidas o tempo todo (exceto possivelmente dentro de uma transação, para as chamadas restrições adiadas).
Os tipos comuns de restrições são:
- não nulo - cada valor em uma coluna não deve ser NULL
- único - os valores nas colunas especificadas devem ser exclusivos para cada linha em uma tabela
- chave primária - os valores nas colunas especificadas devem ser exclusivos para cada linha em uma tabela e não NULL; normalmente cada tabela em um banco de dados deve ter uma chave primária - ela é usada para identificar registros individuais
- chave estrangeira - os valores nas colunas especificadas devem fazer referência a um registro existente em outra tabela (por meio de sua chave primária ou alguma outra restrição exclusiva )
- verificar - uma expressão é especificada, que deve ser avaliada como verdadeira para que a restrição seja satisfeita