可怜我的分啊!(50分)

  • 主题发起人 主题发起人 longwayli
  • 开始时间 开始时间
L

longwayli

Unregistered / Unconfirmed
GUEST, unregistred user!
有一个Query中的SQL语句:

select *
from table1, table2..
where
条件1 and 条件2 and 条件3

其中条件3是由客户端生成的可变字符串,即有可能是fieldA=***,也可能是fieldB=***。
我想把条件3写成一个参数形式,这样客户端只要传递参数,不用传递冗长的SQL语句。
不知如何些,有没有大虾写过,指点一二。
 
function CreateSQL(FieldName : string;FieldValue : string) : Boolean;
var S : string;
begin
S := 'Select * from table1,table2.. where 条件1 and 条件1 and';
S := S + FieldName + '=' + FieldValue;
Result := TRUE;
end;
 
这个容易:)
现在你的query部件的parameters中定义一个参数,(动态也行)然后用
var strName : string;
begin
with query do
begin
Close;
Sql.Clear;
strName := 'select * from table1, table2..
where
条件1 and 条件2 and 条件3'
SQL.Insert(3,strName);
ParamByName('你的参数').AsString := 客户端的参数;
Open;
end;
end;
 
to taohuanu:
我的意思是写成这样:

select * from table1...
where 条件1 and 条件2 and :StringParam

将条件3变成参数形式有客户端传递
 
多人接受答案了。
 
后退
顶部