效果是这样的从memo取出若干个数据进行查询。查询的SQL语句是SELECT * FROM View_RESVT WHERE (WO ='若干个数据' OR JOBNO ='若干个数据') and 1=1 and PRODLOC='X' ORDER BY CODE,WO
想这样的一个查询。我现在想使用IN,把memo里面的数据进行格式化取出放到条件里面,现在的问题是我怎么样把memo里面的数据正确的取出来放到条件里面去。我说的正确是合符SQL语句的查询。因为一个和多个的方法不同。一个的话你只要加两个‘’就行,而两个就不同了,在使用过程中总不能判断是一个还是几个吧!能给点好点的建议不?100分送上
想这样的一个查询。我现在想使用IN,把memo里面的数据进行格式化取出放到条件里面,现在的问题是我怎么样把memo里面的数据正确的取出来放到条件里面去。我说的正确是合符SQL语句的查询。因为一个和多个的方法不同。一个的话你只要加两个‘’就行,而两个就不同了,在使用过程中总不能判断是一个还是几个吧!能给点好点的建议不?100分送上
你可以这样子:var
strName:string;
begin
......
strName:='(''';
for do //for循环去除Memo内容
begin
strName:= strName+'''Memo内容'''+''',''';
end;
strName:=Left(strName,length(strName)-2);
strName:=strName+')';end;
var
I: Integer;
str: string;
begin
Memo1.Text := '';
for I := 0 to 10 do
Memo1.Lines.Add(inttostr(I));
str := '';
for I := 0 to Memo1.Lines.Count - 1 do
begin
if str = '' then
str := QuotedStr(Memo1.Lines.Strings[i])
else
str := str + ',' + QuotedStr(Memo1.Lines.Strings[i]);
end;
ShowMessage(str);
ADOQuery1.SQL.Text := 'select * from 表1 where BH in (' + str +')';
end;str变量就是将你memo里面的内容变成'0','1','2'......这样的格式,你试下