access中有一字段,字段名为“RDate”,类型为“日期/时间”,格式为“常规日期 yyyy-mm-dd hh:mm:ss”。在delphi中生成了一sql语句,如下
select * from masstab
where (ModeKu='一号库') and (RDate between #2004-12-10 11:12:00# and #2004-12-10 14:12:00#)
运行时总是报错,“不正常的定义参数对象,提供了不一致或不完整的信息。”
但该语句在access下运行没任何问题。
请问是什么问题,怎么解决。
select * from masstab
where (ModeKu='一号库') and (RDate between #2004-12-10 11:12:00# and #2004-12-10 14:12:00#)
运行时总是报错,“不正常的定义参数对象,提供了不一致或不完整的信息。”
但该语句在access下运行没任何问题。
请问是什么问题,怎么解决。
解决方案 »
- 请教一个“开料算法”
- 请教一个delphi+sql2005连接的问题?找一个师傅,有的加我qq563682239,万分感谢,有语音最好,拜拜~~~急。。。
- 请问如何在DELPHI里检测系统是否安装了adobe reader
- 如何获取 EOleException 的具体错误号码,并根据具体错误号,写我自己的错误提示?
- 急救插入新记录的方法。
- 岁末下广州,找工作啦!!
- 如何在程序一开始改变屏幕分率为 800*600 32真彩色
- 问一个字符串插入的简单问题!!!
- 如何使 QReport 中 QRImage 按比例缩方???
- 一个控件只有dcu,dcr,res文件,如何用?
- 高手请进(关于继承与重载类方法的问题)
- 请问如何复制一个对象?
'select * from masstab where (ModeKu=''一号库'') and (RDate between #2004-12-10 11:12:00# and #2004-12-10 14:12:00#)'
select * from masstab
where (ModeKu='一号库') and (RDate between #2004-12-9# and #2004-12-10#)
但我的要求是需要日期和时间来查询,这问题怎么解决啊?
select * from masstab
where (ModeKu='一号库') and (RDate between #2004-12-10 11:12:00# and #2004-12-10 14:12:00#)
这条语句是编译器生成后的语句,在delphi中我是这么写的
sql := 'select * from masstab
where (ModeKu=''' + edit1.text + ''') and (RDate between #' + datetimetostr(datetime1) + '# and #' datetimetostr(datetime1) + '#)';
'select * from masstab
where (ModeKu=''一号库'') and (RDate between CDate(''2004-12-10 11:12:00'') and
CDate(''2004-12-10 14:12:00'')'
另外我同样的代码在VB中运行成功,当然语法该了,但生成出来的sql语句完全一样。在VB下能运行通过,delphi下就不行。
急啊,大家帮帮忙看看啊!
select * from masstab
where (ModeKu='一号库') and (RDate between '2004-12-10 11:12:00' and '2004-12-10 14:12:00')
select * from masstab
where (ModeKu='一号库') and (RDate between :date1 and :date2)
Parameters.ParamByName('date1').value:=datetime1.datetime;
Parameters.ParamByName('date2').value:=datetime2.datetime;
解决方法是把参数验证关闭就行了。
只加了一行代码
qur.ParamCheck := false;当然按dh9450(谁有我菜) 的方法也行。
谢谢各位了!