注册 登录
编程论坛 SQL Server论坛

关于写时间的约束

lusan168 发布于 2007-12-14 21:50, 1242 次点击
比如我发表信息的变量名stime,类型为datetime;
回复信息的变量名rtime,类型为datetime;
要求rtime的时间必须晚于发表信息的时间,并且小于等于当前时间怎么写这个约束
5 回复
#2
madpbpl2007-12-14 23:28
不知道这样对不对,楼主作个参考
select * from [tablename] where rtime between '" &stime& "' and getdate()

[[italic] 本帖最后由 madpbpl 于 2007-12-15 00:02 编辑 [/italic]]
#3
lusan1682007-12-14 23:57
已经搞顶了,在check约束里面应该这样写
rtime>stime and rtime<=getdate()

楼上的,你的是不是在查询分析器里面写的哦
#4
madpbpl2007-12-15 00:00
刚学sql server,只会用查询分析器。check约束不懂的。
请楼上指教。
还有我的二楼写法也不对,不好意思。
#5
purana2007-12-15 09:56
check约束就是查询分析器里写的.
#6
madpbpl2007-12-15 13:55
原帖由 [bold][underline]purana[/underline][/bold] 于 2007-12-15 09:56 发表 [url=http://bbs.bc-cn.net/redirect.php?goto=findpost&pid=1148486&ptid=192497][/url]
check约束就是查询分析器里写的.

谢谢,已经查到,大概上理解了。
例子如下
CREATE TABLE ZIPCODES
(ZIPCODE NUMERIC,
CITY CHAR,
STATE CHAR,
CONSTRAINT StateForm CHECK STATE LIKE '[A-Z][A-Z]',
ZIPCODE LIKE '[0-9][0-9][0-9][0-9][0-9]
ZIPCODE ((>=01001 AND <= 02791) AND (>=05501 and <=05544)) AND STATE = 'MA'
1