日期:2014-05-16  浏览次数:20780 次

mssql里面这语句怎么写啊
conn.execute "delete from release_info_subject where datediff('d',now,dateADD('m',2,info_expirytime))<=0"

删除数据表release_info_subject里过期后两月的信息

其中info_expirytime 是保存过期时间的字段


数据库是mssql的

这样写报错说:

为 dateadd 指定了无效的参数 1

那该怎么写呢
MS?SQL

------解决方案--------------------
mssqlserver datepart 参数不用''括起
delete from release_info_subject where datediff(d,now,dateADD(m,2,info_expirytime))<=0
------解决方案--------------------
楼上正解。写成d 或者day都是可以的。
------解决方案--------------------
综合楼上版主的结论:delete from release_info_subject where datediff(d,getdate(),dateADD(m,2,info_expirytime))<=0