在xzyh.db表中有一个“登记日期”字段,设为Date型的。现想用Query1查出日期为2003-5-10
号的记录,用下面的SQL语句时出错:"Type Mismatch in Expression"
with query1 do
begin
close;
sql.clear;
sql.add('select * from xzyh');
sql.add('where 登记日期=2003-5-10');
prepare;
open;
end;
请问该怎么改?
如果要想查询从2002-5-10到2003-5-14号的记录,sql该怎么写?
谢谢!!!
号的记录,用下面的SQL语句时出错:"Type Mismatch in Expression"
with query1 do
begin
close;
sql.clear;
sql.add('select * from xzyh');
sql.add('where 登记日期=2003-5-10');
prepare;
open;
end;
请问该怎么改?
如果要想查询从2002-5-10到2003-5-14号的记录,sql该怎么写?
谢谢!!!
即:用#号将日期括起来,如果不行,则试试:sql.add('where 登记日期='+quotedstr('2003-5-10'));
即:用'号将日期括起来
SQL.Clear;
SQL.Add('select * from xzyh where 登记日期 between :DateStart and :DateEnd ');
parambyname('DateStart').AsDateTime :=DateTimePicker1.date;
parambyname('DateEnd').asdatetime:=DateTimePicker2.date;
Prepare;
Open;