2012-12-05 73 views
3

我創建自= DATE和到= DATE但我想做出約束,使得不能之前,從需要的字段SQL表。我的程序會檢查它,但我想學習如何用SQL強制執行它。 我以前寫過SQL,但從未真正使用約束,不知道它們是如何工作的。SQL約束:日期A在日期B之前 - 如何?

所以問題是:如何使用標準SQL,我如何確保之前是

+0

我認爲你最好的選擇將使用觸發器來執行rela tionship。 –

+1

@ D.Lambert:這絕對沒有必要。檢查約束可以更好,更高效地處理這個問題。 –

+0

未測試ALTER TABLE dbo.Vendors ADD CONSTRAINT CK_Vendor_CreditRatingCHECK(From> To)不知道它將如何處理null – Paparazzi

回答

0

我認爲這是正常的SQL服務器,MySQL和oracle

ALTER TABLE myTbl 
ADD CONSTRAINT chk_Dates CHECK (dtFrom < dtTo) 
+2

不適用於MySQL。引擎是有限的,不支持檢查約束。 –

相關問題