我采用datasnap技术,做成了三层结构,
服务器端采用sqlconnection+sqlquery+datasetprovide的方法连接oracle数据库与客户端,在客户端采用clientdataset+DSprovideconnection+sqlconnection的方法。
如果想动态的取数据,服务器端sqlquery的SQL语句写为:select * from A where Fname=:Param1,将datasetprovide的poAllowcommandtext设置为“true”,然后在客户端,将clientdataset中将参数传入,代码如下:
 var
   pm:Tparam;
  begin
     ClientDataSet1.Close;
     ClientDataSet1.ProviderName:='DataSetProvider1';
     pm:=Tparam.Create(nil);
     pm.Name:='param1';
     pm.DataType:=ftString;
     ClientDataSet1.Params.Clear;
     ClientDataSet1.Params.AddParam(pm);
     ClientDataSet1.Params.ParamByName('param1').AsString:=edit1.Text ;
     ClientDataSet1.Open;
     pm.Free;
  end;
运行的时候,出现“灾难性故障”的对话框。请问这错在哪里呢?可以这样的将参数传给服务器吗?
对于服务器的sqlquery1控件,我将它的active无论设置为true,还是false,都不行。
求高人指点指点啊。数据库技术