Midas多层系统数据库是SQL Server 2000
客户端用TSocketConnection组件连接服务端,
一般再用TClientDataset组件连接TSocketConnection,以提供数据集.请问ClientDataset中可用存储过程吗? 怎么用? 我试了许久都不成功。(不要用ADO方式)

解决方案 »

  1.   

    晕,不用ADO一样可以连数据库,方法多了。
    存储过程是可以用的,但是在Provider里,ClientDataSet只能获得Provider提供的数据集,Provider调用的是存储过程那ClientDataSet访问的也是存储过程了
      

  2.   

    可以的,example:
    datamodal.DmMain.ClientDataSet4.CommandText:='exec  NewQueryForRegion :var1,:var2,:var3,:var4';
      with datamodal.DmMain.ClientDataSet4.Params do
      begin
        ParamByName('var1').Value:=main_un.UserID;
        ParamByName('var2').Value:=cue_str;
        ParamByName('var3').Value:=formatdatetime('yyyymmdd',self.DateTimePicker1.Date);
        ParamByName('var4').Value:=formatdatetime('yyyymmdd',self.DateTimePicker2.Date);
      end;
      try
        DmMain.ClientDataSet4.Open;
      except
         MessageBox(SELF.Handle,'        服务器过于忙碌,请稍后再试'+'退出请按[确定]!'+chr(13)+'按[取消]回到系统','中鑫资源管理系统', MB_OKCANCEL ) ;
      end;
    --------------------------------------------------------------------
    看尽悲伤,庸人自扰不平事。叹尽荒凉,海阔天空谁人知。狂风劲兮,百花飘
    扬乱舞香。捏花一笑,海不扬波断肠心!
      

  3.   

    SQL Server Access组件
      

  4.   

    tiexinliu(铁心刘)  说的就是一个通常用的方法,  当然你也可以自己定义一个DCOM的IProvider接口,通过接口你想干什么就干什么.