在选择指定时间生成静态时提示:
---------------------------------------------------------
错误号:-2147217900
错误描述:为 datediff 指定的参数 1 无效。sql=select * from AspCms_Content where ContentStatus=1 and LanguageID=1 and DateDiff('d', EditTime, '2015-4-2')<=0 order by ContentID
---------------------------------------------------------
通过查阅资料,应该是aspcms在ACCESS、SQL中的表达式不同。
改写成sql=select * from AspCms_Content where ContentStatus=1 and LanguageID=1 and DateDiff(d, EditTime, '2015-4-2')<=0 order by ContentID即可。
也就是将'd'的单引号取消即可。
以下内容为引用:
在SQL中的正确写法是: sql="select * from [clients] where datediff(month,lastlogintime,getdate())>3" '注意这里month没有使用任何的引号,同时使用的是getdate而不是now 在ACCESS中的正确写法是: sql="select * from [clients] where datediff('m',lastlogintime,now())>3" '这里的简写的m使用单引号,同时使用参数now