Trigger vs. check constraint

前端 未结 1 793
夕颜
夕颜 2020-12-06 06:37

I want to add a field-level validation on a table. There is a field named \"account_number\" and this field should always pass a \"luhn\" check. I\'ve found a function cal

相关标签:
1条回答
  • 2020-12-06 07:13

    The rule of thumb is to use CHECK constraint before you resort to triggers.

    A CHECK constraint is faster, simpler, more portable, needs less code and is less error prone. Triggers can easily be circumvented by other triggers, for instance.

    Triggers are much more complicated. Use them when you have to, for more complex requirements.

    If a CHECK constraint is too restrictive for your case or causes trouble reloading a dump, you could use the NOT VALID modifier as middle ground (pg 9.2+). Details:

    • Disable all constraints and table checks while restoring a dump
    0 讨论(0)
提交回复
热议问题