Restrições de integridade são usados para garantir a exatidão e a consistência dos dados em uma Banco de dados relacional. Ou seja, garantir que dados representem assertivamente a realidade modelada. A integridade dos dados é tratada nas bases de dados através do conceito de integridade relacional e é garantida pelo próprio SGBD.
Existem vários tipos de restrições de integridade.
Codd, inicialmente definiu 2 tipos de restrições, mas na sua segunda versão do modelo relacional ele definiu 5 tipos de restrições de integridade:
O domínio indica os possíveis valores de um atributo. A integridade de domínio verifica se os dados são do tipo permitido (alfanumerico, numerico,etc), tamanho do campo, se ele pode ser nulo ou não.
Por exemplo, é possível definir que um atributo "idade" de um funcionário é sempre um valor inteiro positivo.
Restrição de Chave
Impede que uma chave primária se repita. Um campo chave primária diferencia de forma única os registros (linhas) de uma relação (tabela).
Restrição de Domínio
Definir o conjunto de valores possíveis ou permitidos que um campo pode ter.
Integridade de vazio
Verifica se um campo pode ou não receber valor NULL. Sub-item da integridade de domínio.
Integridade Referencial
Uma chave estrangeira de uma relação tem que coincidir com uma chave primária da sua tabela "pai" a que a chave estrangeira se refere. Ou seja, não só deve existir o atributo (campo), como também, o valor referenciado.
Integridade da coluna
Determina os valores aceitos para a respectiva coluna.
Integridade definida pelo utilizador
A integridade definida pelo usuário permite definir regras comerciais que não se encaixam em outras categorias de integridade. Todas as categorias de integridade oferecem suporte à integridade definida pelo usuário.
violação da integridade referencial
Existe violação da integridade referencial quando a chave externa não coincide com a chave primária da sua tabela “pai”.
https://pt.wikipedia.org/wiki/Restri%C3%A7%C3%B5es_de_integridade