请问怎样进行模糊查询???(10分)

  • 主题发起人 主题发起人 board
  • 开始时间 开始时间
B

board

Unregistered / Unconfirmed
GUEST, unregistred user!
有一个edit,现在想根据edit中输入的内容进行模糊查询,请问,在delphi中模糊查询的语句该怎么写啊?
 
select * from table1 where a like '%查询条件%'
 
除了dopro说的,还可以:
DAOQuery1.Close;
DAOQuery1.Sql.Clear;
DAOQuery1.Sql.Add('select * from table1 where a like =:aa');
DAOQuery1.ParamByName ('aa').AsString:='%'+edit1.text+'%';
DAOQuery1.Open;
 
ADODataSet1.active:=false;
ADODataSet1.commandtext:='select * from table1 where a like =:aa';
ADODataSet1.active:=true;
 
with query1 do
begin
close;
sql.clear;
slq.add('select * from 表名 where 字段 =:n1'); //n1为参数
sql.parambyname('n1').asstring:=edit1.text;
open;
end;
 
Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add('Select * From 表名 Where 字段名 Like '''+'%'+Edit1.Text+'%'+'''');
//% 任何含有零个或更多字符的字符串
//_ 任何单一字符
//[] 任何在括号内所有指定的范围中的任何单一字符
//[^] 任何不在括号内所有指定的范围中的任何单一字符
Query1.Open;
 
以上我都试了,不管用呀,不是关键字查不到就是语法错误
 
应该可以的
不知你什么地方错了
 
niceboy911你说我的不可以吗。我调试程序的时候都通过了。你仔细一点,不要太马糊了。
 
用fornmat()函数把SQL语句转换以下!
 
Query1.Sql.Add('Select * From 表名 Where 字段名 Like '''+'%'+Edit1.Text+'%'+'''');
这样的语句在编译时不能通过
 
下载一个sql的图书吧自己看,很简单的,免得让我感觉自己像猴子
 
接受答案了.
 
后退
顶部