有如下SQL,为什么不能执行?我在SQL Server的查询分析器和SQL Explorer中试过都可以执行
但是为什么在程序里用TQuery执行不了呢?错误提示如下:
Invalid use of keyword
Token:char(8),pTo_Datetime-"8:00:00",122)
Line Number: 1.SQL语句如下:
Select convert(char(8),pTo_Datetime-"8:00:00",112) as WorkDate, 
processorID,
(select OpName from operator b where a.processorid = b.opid) as processorname,
worknode = case workflow_node 
when "1" then "11" 
when "2" then "22" 
when "3" then "33" 
when "4" then "44" 
when "5" then "55" 
end,
count(workflow_node) as SHULIANG from job_log a 
where process_status = "2" 
and convert(char(8),pTo_Datetime-"8:00:00",112) >= "20021006" 
and convert(char(8),pTo_Datetime-"8:00:00",112) <= "20021016" 
group by convert(char(8),pTo_Datetime-"8:00:00",112),
processorID,workflow_node order by workdate desc,processorID
在线等待,谢谢大侠

解决方案 »

  1.   

    是不是和 TQUERY 控件有关????
      

  2.   

    >>Select convert(char(8),pTo_Datetime-"8:00:00",112) as WorkDate,
    在Query中,':'后面代表的是参数。
    在Query.SQL中,不能有多余的冒号。
      

  3.   

    非法使用了关键字,pTo_Datetime这个是什么类型的变量?
      

  4.   

    同意 webnumen(现代孔子) 的猜测,pTo_DateTime 是不是你程序中的变量呀?
      

  5.   

    同意 windindance(风舞轻扬),将冒号提出来用单引号引入 。可以吗?
      

  6.   

    sorry,忘了一件非常重要的事:指定Database
    其他都没有问题,谢谢各位
      

  7.   

    sorry,忘了一件非常重要的事:指定Database  
    其他都没有问题,谢谢各位
      

  8.   


    可能是在QUERY中 convert(char(8),pTo_Datetime-"8:00:00",112) 的写法错误,不清楚你是怎样写的???能把你在TQUERY中的代码写出来看看,