selcet sum( work_hours ) as sumr from overtime
where person = :person and work_date >= :starttime and
work_date <= :endtime在程序里一执行到打开对应的TQuery表就出错其中starttime和endtime是TDateTime类型的,并且跟踪进去发现是赋值正确的请问是啥原因?overtime表很简单
ID Integer
PERSON Char(6)
WORK_Hours smallint
Work_date TimeStamp
where person = :person and work_date >= :starttime and
work_date <= :endtime在程序里一执行到打开对应的TQuery表就出错其中starttime和endtime是TDateTime类型的,并且跟踪进去发现是赋值正确的请问是啥原因?overtime表很简单
ID Integer
PERSON Char(6)
WORK_Hours smallint
Work_date TimeStamp
如:query1.sql.clear;
query1.sql.add('selcet sum( work_hours ) as sumr from overtime' );
query1.sql.add('where');
query1.sql.add('person = :person ');
query1.sql.add('and work_date >= :starttime' );
query1.sql.add('and work_date <= :endtime');
query1.params[0].AsString := Person;
query1.Params[1].AsDateTime := StartTime;
query1.Params[2].AsDateTime := EndTime;
query1.close;
query1.open;
建议采用别的方法来实现同样的功能。
如果用SQL Server作为数据库,就不会出现这种情况了。
冒号是Delphi的语法,怎么写到了SQL中?