回 帖 发 新 帖 刷新版面

主题:关于日期查询问题

我要查询两个日期之间的数据,代码如下;
sql1:=datetostr(datetimepicker1.date);
 sql2:=datetostr(datetimepicker2.date);
 sql:='select * from pplan where plan_nd >''sql1''';   // and  plan_nd<''sql2''
 showmessage(sql);
 ADOQuery1.SQL.add(sql);

但是一运行就说:字符串转换为datetime时发生语法错误,为什么?请高手指教!

回复列表 (共2个回复)

沙发

sql1:=formatdatetime('yyyy-mm-dd',datetimepicker1.date);
 sql2:=formatdatetime('yyyy-mm-dd',datetimepicker2.date);
 sql:='select * from pplan where convert(varchar(10),plan_nd,120) >='+''''+sql1+''''+' and convert(varchar(10),plan_nd,120) <='+''''+sql2+'''';
 showmessage(sql);
 ADOQuery1.SQL.add(sql);
ADOQuery1.open;

板凳


问题解决,谢谢

我来回复

您尚未登录,请登录后再回复。点此登录或注册