DELPHI用ACCESS作为数据库的问题

dellxng2000 2008-10-19 04:20:39
已经连接ACCESS数据库。数据库内容可以在DBGRID中显示。
我用SELECT查询时。为什么没有数据?但是,我在ACCESS2003里用这个SELECT查询就可以查出数据来。具体如下
procedure TForm1.Button1Click(Sender: TObject);
var ed1,S:string;
begin
if edit1.Enabled = true then
begin
ed1:=edit1.Text ;
S:='select * from sheet1 where DESC like '+'"*'+ed1+'*"';
with adoquery2 do
begin
Close;
SQL.Clear;
sql.Add(s);
OPEN ;
end;
end;
end;
如果去掉where DESC like '+'"*'+ed1+'*"' 直接用前边的就可以显示出全表(在DBGRID里)。非常的奇怪
...全文
126 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
dellxng2000 2008-10-20
  • 打赏
  • 举报
回复
谢谢各位的回答。终于通过了。太感谢了
kye_jufei 2008-10-20
  • 打赏
  • 举报
回复
%
pilicat 2008-10-19
  • 打赏
  • 举报
回复
在Delphi里,模糊查询需要使用 % 号,而不是*号,因此

S:='select * from sheet1 where DESC like '+'"*'+ed1+'*"';

需要改为:

S:='select * from sheet1 where DESC like '+QuotedStr('%'+ed1+'%');


yangkunjie 2008-10-19
  • 打赏
  • 举报
回复
调试跟一下,看看sql的语句究竟是什么,然后调整
------------------------------------------
奴隶不好混啊,这年头没分就没人回答问题的

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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