2011-05-09 58 views
0

我需要一个日期检查约束,所以今天/这个日期后没有数据可以输入。检查约会的日期

请指教谢谢所有

+0

这是否也包括时间? – gbn

+0

不只是日期 – martin

回答

4

试试这个:

ALTER TABLE yourTable 
ADD CONSTRAINT yourDateTimeColumn CHECK (yourDateTimeColumn < GetDate()); 
+0

我只是在检查约束的表达部分添加了这个吗? – martin

+0

我认为你的逻辑与OP想要的是相反的:你在检查日期时间值是否在未来,我认为OP要确保这些值是过去的。但是没有更多的信息(数据类型,SQL Server版本,时间相关或仅仅是日期等),无论如何都不可能给出明确的答案。 – Pondlife

+0

如果您在分析器中运行代码,则直接添加约束条件。 – JTorrecilla

3

删除SQL Server 2008上的时间的部分,使用cast...date

另外,我认为你可以有日期包括今天

ALTER TABLE yourTable 
ADD CONSTRAINT yourDateTimeColumn CHECK (
    CAST(yourDateTimeColumn as date) <= CAST(GETDATE() as date) 
    );