极度郁闷的问题,希望高手不吝赐教(模糊查询)

linyasa007 2004-08-23 06:25:09
在提问之前,我查阅了很多资料,不知道原因。

delphi 6.0+access 2000

问题如下:
有一sql语句:
SELECT *
FROM z_bidding
WHERE (medicine_name like '*阿*' or ware_name like '*阿*') and (agent_name like '*诚*' or agent_name_op like '*诚*')

该语句在access中执行,经过测试可以查询出2条结果


但是在delphi 中以下代码执行后的结果,竟然是空,查询不到结果了。

sql:='(medicine_name like ''*阿*'' or ware_name like ''*阿*'') and (agent_name like ''*诚*'' or agent_name_op like ''*诚*'')';
if sql<>'' then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from z_bidding where '+sql);
ADOQuery1.Open;
end;


请高手赐教啊
...全文
128 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoyuehen 2004-09-03
  • 打赏
  • 举报
回复
虽已结贴了..不知道你解决了没有?

"show出来的sql跟我在access 测试中的是一样的"..那可能是你的Delphi代码有问题
linyasa007 2004-08-26
  • 打赏
  • 举报
回复
to JohnShen(因果网), changechange(access911 & cg1)

这??好像access中,通配符是*吧,在SQL SERVER 中的统配符是%。


to xiaoyuehen(散了吧认了吧算了吧放了吧)

用过showmessage()了,show出来的sql跟我在access 测试中的是一样的
changechange 2004-08-24
  • 打赏
  • 举报
回复
* 改成 % 即可
xiaoyuehen 2004-08-23
  • 打赏
  • 举报
回复
用shommessage()把sql显示出来看看。。
JohnShen 2004-08-23
  • 打赏
  • 举报
回复
你将通配符'*'都改为'%'后再试试。

7,712

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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