2011-05-09 93 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) 
    );