SQL Server日期列不大于另一个日期列

3

我在T-SQL中有这个语句:

[dateReturned] [DATE] NULL 
   CONSTRAINT [Date_Returned] CHECK (dateReturned >= dateRented),

但是当我执行整个查询时,出现了这个错误。

Msg 8141,级别 16,状态 0,行 17
列 'dateReturned' 的 CHECK 约束引用另一列,表 'Rental'。
Msg 1750,级别 16,状态 0,行 17
无法创建约束。请参阅前面的错误。

这条语句有什么问题?

1个回答

5
多列CHECK约束必须在表级别定义。在列级别定义的约束无法引用其他列。
来自文档
您可以将多个CHECK约束应用于单个列。
您还可以通过在表级别创建CHECK约束,将单个CHECK约束应用于多个列。
摘自另一个MSDN页面:
ALTER TABLE dbo.Vendors ADD CONSTRAINT CK_Vendor_CreditRating
CHECK (CreditRating >= 1 AND CreditRating <= 5)

谢谢,我觉得它起作用了。但是我有另一个问题,所以我开了一个新的问题。 - JackyBoi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接