delphi 中 adoquery 带参数查询的奇怪问题

原创 2007年10月08日 16:52:00

str = 'select * from t1 a' +
 
'left outer join t2 b on a.id=b.id'+ 
'left outer join t3 c on a.id=c.id'+
 
'where c.field like :v1' ;
adoquery.sql.clear; 
adoquery.sql.add(str) ;
adoquery.parameters.paramvalues[
'v1'] := '%查询条件%'
adoquery.open;


无法查到任何数据,如果直接赋值就可以:

str = 'select * from t1 a' +
 
'left outer join t2 b on a.id=b.id'+ 
'left outer join t3 c on a.id=c.id'+
 
'where c.field like ''%查询条件%''' ;
adoquery.sql.clear; 
adoquery.sql.add(str) ;
adoquery.open;

问题出在,生成的参数,adoquery无法获取参数长度,只有参数赋值是才分配长度,如字符串“查询条件”,adoquery设置参数长度为4,当执行语句时,就变成 '%查询' ,查不到所要数据.

ADOQuery.Parameters[0].Size := 50;
后,查询结果正确。

Delphi ADOQuery连接数据库的查询、插入、删除、修改

//查询记录 procedure TForm1.Button1Click(Sender: TObject); begin ADOQuery.Close; ADOQuery.SQL.Clear; ADO...
  • chinazhd
  • chinazhd
  • 2015年04月14日 21:04
  • 13771

Delphi开发学习二:使用ADOQuery控件对SQL数据库表进行操作

在delphi学习一中,已经使用ADOConnection控件设置属性连接数据库SQL了。 在这里开始使用ADOQuery控件对SQL数据库表进行操作。 首先我们在SQL中创建数据库名为PERSONN...
  • u011846249
  • u011846249
  • 2015年08月17日 20:28
  • 2691

Delphi多线程下的ADO编程

前言: 几个月前接到一个任务:将一后台程序访问数据库的方式从BDE改为ADO,原因是由于业务量的增加,通过BDE不论是向数据库写入数据还是从数据库中读出数据的速度都变得无法忍受,大家都知道ADO在数...
  • youthon
  • youthon
  • 2013年05月06日 16:13
  • 3118

Delphi Adoquery参数查询

  • 2016年11月16日 17:24
  • 1.4MB
  • 下载

Delphi中adoquery的两个小问题

问题1.ADOQuery错误:ADOQuery1:commandtext does not return a result set  程序内容:       ADOQuery1.Close;  ...
  • dongyue786
  • dongyue786
  • 2012年10月22日 13:41
  • 464

Delphi-ADOQuery查询、插入、删除、修改

//查询记录 procedure TForm1.Button1Click(Sender: TObject); begin ADOQuery.Close; ADOQuery.SQL.Clear;...
  • sdudubing
  • sdudubing
  • 2011年12月12日 10:17
  • 4512

Delphi ADOQuery连接数据库的查询、插入、删除、修改

//查询记录 procedure TForm1.Button1Click(Sender: TObject); begin ADOQuery.Close; ADOQuery....
  • qq280929090
  • qq280929090
  • 2014年09月23日 09:01
  • 811

delphi中调用oracle的存储过程(ADODataSet,ADOQuery,过程带返回值不带返回值均有)

http://search.csdn.net/Expert/topic/2280/2280860.xml?temp=2.169436E-02 论坛中JCC0128 网友的发言 【delphi...
  • liyanchen78
  • liyanchen78
  • 2013年05月29日 15:22
  • 2365

Delphi_ADOQuery连接数据库的查询、插入、删除、修改

  • 2011年12月14日 22:25
  • 1KB
  • 下载

delphi ADOQuery 用法

一、 ADOQuery的LockType 今天终于把纠缠了几天的问题改完了,说到底只是一个很小的问题,就是ADOQuery的一个小属性。          把控件DBGridEh的一...
  • qq280929090
  • qq280929090
  • 2014年09月23日 09:05
  • 5263
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:delphi 中 adoquery 带参数查询的奇怪问题
举报原因:
原因补充:

(最多只允许输入30个字)