SQL :
query3.close;
query3.SQL.Clear;
query3.SQL.add('SELECT * FROM tablename where fzrq between "'+datetostr(DateTimePicker1.date)+'" and "'+datetostr(DateTimePicker2.date)+'" order by fzrq');查询结果没有数据(数据表中有符合条件的数据)
如果在DateTimePicker1.date处直接写日期可以查出结果,
请解决。。
query3.close;
query3.SQL.Clear;
query3.SQL.add('SELECT * FROM tablename where fzrq between "'+datetostr(DateTimePicker1.date)+'" and "'+datetostr(DateTimePicker2.date)+'" order by fzrq');查询结果没有数据(数据表中有符合条件的数据)
如果在DateTimePicker1.date处直接写日期可以查出结果,
请解决。。
那就要写成二个单引号,还有,有一点要注意,日期格式应写成与数据库内的日期字段格式相同
才能查到数据,用 formatdatetime
DateTimePicker1.DateTime
试试看
在调用qery3.close时把焦点从datetimepicker出移开看看,比如调用button1.setfocus.
query3.SQL.Clear;
query3.SQL.add('SELECT * FROM tablename where fzrq>='''+datetostr(DateTimePicker1.date)+''' and fzrq<='''+datetostr(DateTimePicker2.date)+''' order by fzrq');
Query3.ParamByName('D1').AsDateTime := DateTimePicker1.Date;
Query3.ParamByName('D2').AsDateTime := DateTimePicker2.Date;老兄做的程序 fzrq 是不是发证日期字段呀?我看着很眼熟,呵呵!