delphi7+access2003数据查询问题
delphi7+access2003开发程序,想选择一段时间内的数据记录,我写的sql语句如下:
select * form [tablename] where 时间 between DateTimePicker1.date and DateTimePicker2.date
其中时间我设置的是 日期类型, 程序执行的时候, 查询没有记录, 可数据库里明明有符合这个时间段的有记录,就是没
查询出来,大侠们,这是怎么回事呀?
[解决办法]
- Delphi(Pascal) code
sql:=sql+' where 时间 = #'+datetimePicker1.date+'#';
[解决办法]
1.断点出SQL语句
2.然后把SQL语句在ACCESS查询一下,看看是否有语法错误。
sql:=sql+'where (时间 = datetimePicker1.date)';你这里是把datetimePicker1.date当成字符串了。
按楼上的写法:adoquery.Sql.Text := 'select * form [tablename] where 时间 >= #2012-4-20# and 时间 <= #2012-4-25#'
做你的的变量方式应该是
adoquery.Sql.Text := 'select * form tab where 时间 >= #'+datetostr(datetimepicker1.date)+'# and 时间 <= #'+datetostr(datetimepicker1.date)+'#'
你自己试试。