PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Restrição de gatilho vs. verificação


A regra geral é usar CHECK restrição quando possível.

Um CHECK restrição é mais rápida, mais simples, mais portátil, precisa de menos código e é menos propensa a erros. Os gatilhos podem ser facilmente contornados por outros gatilhos, por exemplo.

Um TRIGGER é mais complicado. Use-o quando precisar , para requisitos mais complexos.

Se um CHECK restrição é muito restritiva para o seu caso ou causa problemas para recarregar um dump, você pode usar o NOT VALID modificador como meio termo (Postgres 9.2+). E, opcionalmente, VALIDATE mais tarde. Ver:
  • Desabilite todas as restrições e verificações de tabela ao restaurar um dump