检查约束SQL

时间:2015-04-14 15:16:53

标签: sql sql-server sql-server-2008

表格中有2列 -

[SendDate]和[PayDate]

我正在尝试实施一个约束来检查 - 如果产品尚未寄出,则无法支付该产品。

我不知道如何继续下去。

非常感谢任何建议,谢谢

1 个答案:

答案 0 :(得分:2)

您可以尝试这样的事情:

CHECK( 
  (SendDate IS NULL AND PayDate IS NULL) OR 
  (SendDate IS NOT NULL AND PayDate IS NULL) OR 
  (SendDate IS NOT NULL AND PayDate > SendDate)
 );"

即。 :

  1. 未发送订单
  2. 订单已发送但未付款
  3. 订单已发送,然后付款