我有一张桌子PO_HEADER -
PO_NO | STATUS | AUTHORISATION DATE | AUTHORISATION CODE | ....
在我的应用程序中,创建状态为8的采购订单,然后在授权后将状态更改为1.我的问题是,有时保存采购订单时,尽管没有采购订单,但状态为1而不是8任何能够做到这一点的代码(我能找到)。
那么,是否有可能创建一个约束来阻止尝试将“STATUS”设置为1的更新,同时将“AUTHORIZATION CODE”留空(null)?
答案 0 :(得分:0)
只需使用此检查约束
ALTER TABLE t ADD CONSTRAINT CK_your_Constraint_name
CHECK (STATUS != 1 AND (AUTHORISATION CODE = '' OR AUTHORISATION CODE IS NULL) )