clientdata 如何加参数?(我只有30分了)(30分)

  • 主题发起人 主题发起人 TIANXU
  • 开始时间 开始时间
T

TIANXU

Unregistered / Unconfirmed
GUEST, unregistred user!
在三层应用碰到了这个问题
我原来的两层种的QUERY 是这样的
with query1do
begin
close
sql.add('SQL语句');
parambyname('s_year').value:=s_year;
parambyname('s_month').value:=s_month;
parambyname('s_day').value:=s_day;
open;
end

现在改成 with dclientdatado
请问如何使用类似parambyname的语句啊?
ckientdata 好象不支持 parambyname吧
 
不用这种加参数的方法吧,直接把变量放到SQL语句中:
with dclientdatado
begin
close;
CommandText:='select * from TableName where field_Year='''+s_year
+''' and field_Month='''+s_month+''' and field_day='''+s_day+'''';
Open;
end;
以上是假定字段类型都是字符串型的,如果是数字型,则不用另加引号,如:
CommandText:='select * from TableName where field_Year='+s_year
+' and field_Month='+s_month+' and field_day='+s_day;
 
dclientdata是?TClientDataSet???
 
不可以用啊
 
HunterTeam,谢谢你的思路,我也是这样用的啊
可是现在必须要加参数的了.
 
TClientDataSet.Params.ParamValues[参数名]:=变量;
 
clentdataset1.close;
clientdataset1.commandText:= 'select * from table1 where id=:id'
clientdataset1.Params.ParamByName('id').value :=10;
clientdataset1.open
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部