日期:2014-05-17  浏览次数:20471 次

下面使用getdate() 为何会报Column not found
为什么下面这句没有问题
AND "&chr(34)&"HPD:HelpDesk"&chr(34)&"."&chr(34)&"Create Time"&chr(34)&" = "&chr(39)&"2012-11-6 19:23:04"&chr(39)&"

但是
AND "&chr(34)&"HPD:HelpDesk"&chr(34)&"."&chr(34)&"Create Time"&chr(34)&" = getdate()
就提示Column not found

使用getdate()导致报错,所以未能打印出sql语句(因为用的是aa.vbs类似这样的文件)

------解决方案--------------------
程序语言好像有专门的实现getdate()的函数,但是我不知道你用的是什么语言。不清楚
------解决方案--------------------
用函数now()
------解决方案--------------------
引用:
用函数now()

+1  
DateTime.New.ToString()
------解决方案--------------------
引用:
AND (datediff(mi, "&chr(34)&"HPD:HelpDesk"&chr(34)&"."&chr(34)&"Create Time"&chr(34)&",now()) > 30)

写成这样,还是提示Column not found

列出完整的拼凑语句
------解决方案--------------------
拼出的结果是这么个东西:
SELECT "HPD:HelpDesk"."Assigned To individual+", "HPD:HelpDesk"."Create Time" 
from "HPD:HelpDesk" "HPD:HelpDesk" WHERE (datediff(mi, "HPD:HelpDesk"."Create Time",getdate()) > 30) 
ORDER BY "HPD:HelpDesk"."Case ID+"

报的是列名没找到,那就看你的表结构,不是getdate()有错
------解决方案--------------------
用的是什么数据库,给出库结构
------解决方案--------------------
不知道库无能为力,datediff mssql中和mysql中有