delphi连access
今天是4月20日。
qssj:=datetostr(now)+' 6:00:00';
zzsj:=datetostr(now)+' 18:00:00';
(这时qssj应该是2010-4-20 6:00:00,zzsj是2010-4-20 18:00:00)
sql:='select count(*) as 出车车辆,sum(zhuangzl) as 出车重量 from dzhyb where zhanneisj is not null and zhanneisj<= #'+zzsj+ '# and zhanneisj>= #'+ qssj + '# and bzw=0';我录入的zhanneisj是2010-4-20 17:40:36它应该在这个范围之内呀,可是没有查到。
而在2010-4-19 18:00 到2010-4-20 6:00:00里面找到了,怎么回事呢?
今天是4月20日。
qssj:=datetostr(now)+' 6:00:00';
zzsj:=datetostr(now)+' 18:00:00';
(这时qssj应该是2010-4-20 6:00:00,zzsj是2010-4-20 18:00:00)
sql:='select count(*) as 出车车辆,sum(zhuangzl) as 出车重量 from dzhyb where zhanneisj is not null and zhanneisj<= #'+zzsj+ '# and zhanneisj>= #'+ qssj + '# and bzw=0';我录入的zhanneisj是2010-4-20 17:40:36它应该在这个范围之内呀,可是没有查到。
而在2010-4-19 18:00 到2010-4-20 6:00:00里面找到了,怎么回事呢?
sql:='select count(*) as 出车车辆,sum(zhuangzl) as 出车重量 from dzhyb where zhanneisj is not null and zhanneisj between qssj and zzsj and bzw=0';
我记得不能用Between的 ,那是连SQL2000用的。access的时间比较语句比较特殊;
你可以查一下相关资料;或者看看下面的语句能不能适合你用,自己再修改一下:
with ADOQuery1 do
begin
……
SQL.text:= SQL.text + ' and zhanneisj>=:TestH' ;
SQL.text:= SQL.text + ' and zhanneisj<=:TestE' ;
parameters.parambyname('TestH').value:=Datetimetostr(qssj);
parameters.parambyname('TestE').value:=Datetimetostr(zzsj);
end;