var temp1,temp2:string; i:integer; begin temp1:=find.text; temp2:=''; for i:=1 to length(temp1)-1 do begin temp2:='%'+temp1[i]+temp1[i+1]; end; temp2:=temp2+'%';
Query1.Close; Query1.SQL.Clear; Query1.SQL.Add('Select * from school'); Query1.SQL.add('where name like:pname'); query1.ParamByName('pname').AsString:=temp2; Query1.Open; end;
如此,这般。。哈 procedure Tform1.sel; var tmpsql:string; begin tmpsql:='select * from 表1 where 字段1 like %+'trim(edit1.text)'+%'; with DataModule1.Query1,DataModule1.Query1.sql do begin close; clear; add(tmpsql); prepare; open; end; end;
错! procedure Tform1.sel; var tmpsql:string; begin tmpsql:='select * from 表1 where 字段1 like %'+trim(edit1.text)+'%'; with DataModule1.Query1,DataModule1.Query1.sql do begin close; clear; add(tmpsql); prepare; open; end; end;
tmpsql:='select * from 表1 where 字段1 like '''+'%'+trim(edit1.text)+'%'+'''';
应该加上 distinct 像这样: select distinct * from tablex where XX like %s 否则有一堆重复的及无效的对应数据
呵呵,这样的语句我也没用过,可不知道行不行哦!
query1.ParamByName('value').Asstring := '%匹配的字符串%';
其中:value是sql语句中的变量,在外面附值。
这一句行不行?行的话就
str2='%';
for i:=0 to length(str1)-1 do
str2:=str2+str1[i]+'%';
告诉我怎么给分?Thanks!!!!!
str = 'select * from table1 where field1 like '+'%'+''''+Edit1.Text'+''''+'%'
query1.sql.Add(str);
Query1.SQL.Clear;
Query1.SQL.Add('Select * from MemberPassword');
Query1.SQL.add('where Membername like:Buname');
query1.ParamByName('Buname').AsString:= Password.text;
Query1.Open;
query1.Refresh ;
i:integer;
begin
temp1:=find.text;
temp2:='';
for i:=1 to length(temp1)-1 do
begin
temp2:='%'+temp1[i]+temp1[i+1];
end;
temp2:=temp2+'%';
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('Select * from school');
Query1.SQL.add('where name like:pname');
query1.ParamByName('pname').AsString:=temp2;
Query1.Open;
end;
procedure Tform1.sel;
var
tmpsql:string;
begin
tmpsql:='select * from 表1 where 字段1 like %+'trim(edit1.text)'+%';
with DataModule1.Query1,DataModule1.Query1.sql do
begin
close;
clear;
add(tmpsql);
prepare;
open;
end;
end;
procedure Tform1.sel;
var
tmpsql:string;
begin
tmpsql:='select * from 表1 where 字段1 like %'+trim(edit1.text)+'%';
with DataModule1.Query1,DataModule1.Query1.sql do
begin
close;
clear;
add(tmpsql);
prepare;
open;
end;
end;
像这样: select distinct * from tablex where XX like %s
否则有一堆重复的及无效的对应数据