SQL语句问题?

dacsd 2003-10-09 02:08:40
showmessage('查找:'+combobox1.text);
adoquery1.close;
adoquery1.sql.clear;
adoquery1.SQL.add('select * from gtdata');
adoquery1.sql.add('where jh='+'''+combobox1.text+''');
adoquery1.ExecSQL;
adoquery1.Active:=true;
dbgrid1.Visible:=true;

为何上述语句为何得到的记录集数空的,而showmessage('查找:'+combobox1.text);的值确实存在。请帮忙。
谢谢
...全文
43 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dacsd 2003-10-09
  • 打赏
  • 举报
回复
谢谢:IORILI(眼镜@_@),分不够了,再次感谢!
zhoutian618 2003-10-09
  • 打赏
  • 举报
回复
showmessage('查找:'+combobox1.text);
adoquery1.sql.clear;
adoquery1.SQL.add('select * from gtdata');
adoquery1.sql.add('where jh='''+combobox1.text+'''');
adoquery1.Active:=true;
dbgrid1.Visible:=true;
IORILI 2003-10-09
  • 打赏
  • 举报
回复
另外
execsql是用在执行的sql没有返回值的情况下用
active和open是在有返回值的情况下用
所以在你的程序中可以把adoquery1.execsql;去掉
zhoutian618 2003-10-09
  • 打赏
  • 举报
回复
adoquery1.sql.add('where jh='''+combobox1.text+'''');

//再试试。
IORILI 2003-10-09
  • 打赏
  • 举报
回复
你在调试的时候应该在
adoquery1.sql.add('where jh='+'''+combobox1.text+''');的后面加
showmessage(adoquery1.sql);就能发现问题所在了
IORILI 2003-10-09
  • 打赏
  • 举报
回复
adoquery1.sql.add(' where jh='+'''+trim(combobox1.text)+''');
加一空格,再加trim

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧