Základním pravidlem je použití CHECK
omezení, pokud je to možné.
A CHECK
omezení je rychlejší, jednodušší, přenosnější, potřebuje méně kódu a je méně náchylný k chybám. Spouštěče lze snadno obejít například jinými spouštěči.
TRIGGER
je složitější. Použijte jej, když musíte , pro složitější požadavky.
Pokud CHECK
omezení je pro váš případ příliš omezující nebo způsobuje potíže s opětovným načtením výpisu, můžete použít NOT VALID
modifikátor jako střední cesta (Postgres 9.2+). A volitelně VALIDATE
to později. Viz:
- Při obnově výpisu deaktivujte všechna omezení a kontroly tabulek