delphi 中 adoquery 带参数查询的奇怪问题
2007-10-08 16:52
459 查看
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
str = 'select * from t1 a' +
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
'left outer join t2 b on a.id=b.id'+
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
'left outer join t3 c on a.id=c.id'+
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
'where c.field like :v1' ;
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
adoquery.sql.clear;
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
adoquery.sql.add(str) ;
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
adoquery.parameters.paramvalues['v1'] := '%查询条件%';
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
adoquery.open;
无法查到任何数据,如果直接赋值就可以:
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
str = 'select * from t1 a' +
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
'left outer join t2 b on a.id=b.id'+
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
'left outer join t3 c on a.id=c.id'+
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
'where c.field like ''%查询条件%''' ;
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
adoquery.sql.clear;
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
adoquery.sql.add(str) ;
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
adoquery.open;
问题出在,生成的参数,adoquery无法获取参数长度,只有参数赋值是才分配长度,如字符串“查询条件”,adoquery设置参数长度为4,当执行语句时,就变成 '%查询' ,查不到所要数据.
当
ADOQuery.Parameters[0].Size := 50;
后,查询结果正确。
相关文章推荐
- 在Delphi中动态地使用SQL查询语句 Adoquery sql 参数 冒号
- 还是毕业设计的问题,Delphi中ADO数据库组件的TParameter&TParameters的问题,看了一些书上很少讲ADOQuery组件参数的赋值问题所以在这里提一下,希望对一些人有帮助
- 参数为集合时,mybatis3 分页查询问题及其对应的解决方法
- Delphi应用程序在命令行下带参数执行返回命令行提示的问题
- jdbc查询语句中in后传参数问题的解决方案
- Mybatis in查询传入字符串参数问题
- Delphi-ADOQuery查询、插入、删除、修改
- Delphi ADOQuery连接数据库的查询、插入、删除、修改
- 跨服务器查询时,需要带入参数的问题
- 遇见了奇怪bug,前端用的AngularJs,后台是SpringMVC,持久用的hibernate,跟后台断点时查询数据库返回一条数据,否则返回两条,以下是问题详述
- 折腾Oracle问题小菜记[分页存储过程/查询所有表、视图、存储过程/查询表、视图、存储过程字段结构与参数](三)
- (转)Delphi 调用C#编写的WebService 参数为Null解决方法 附中文乱码问题
- 奇怪的问题,InvalidateRect最后一个参数在XP下无效
- Delphi客户端访问.NET Webserivce时遇到传入参数为空的问题解决!
- Delphi的MDI编程中遇到的一个奇怪问题(值得研究的一个问题)
- 关于csc中"/res"参数的奇怪问题
- mybatis查询参数为0且类型不是string的小问题
- 原生SQL的查询问题,传递参数查询的问题
- Delphi Adoquery 多次查询
- pager-taglib翻页查询参数乱码问题