2014-10-11 58 views
-1

我有這樣的約束DATEADD SQLServer中的約束

([dateOfBirth]>dateadd(year,(-21),getdate())) 

當我嘗試插入此聲明此約束不讓我去。

INSERT INTO [dbo].[Customer] 
VALUES ('F1324','132456789','James','1989-09-24','Orchard Park, Tagore Lane'); 

什麼是我在這裏犯錯?

+2

不應該是'<? – 2014-10-11 16:22:42

回答

2

的約束不會讓你插入記錄,因爲當前日期減去21年(這將是1993-10-11在這個時候),不滿足條件:

1989-09-24 > 1993-10-11

假設你的意思是隻允許21歲及以上的人,將約束切換到

([dateOfBirth]<dateadd(year,(-21),getdate())) 
+0

是的,*臉掌* – JackyBoi 2014-10-11 17:03:55