DELPHI存储过程调用

简介:
首先,我们使用一种简单的方式,即通过控件的方式来定义存储过程和数据源。
新建一个单元,命名为:DataMConn,在加入一个ADO单元下的ADOStoredProc,这里命名为ADOSPTempAbove ,再加入Data Access单元下的一个DataSource,这里命名为DataSourceAbove,设置DataSourceAbove的DataSet属性为ADOSPTempAbove,当然这个属性也可以在程序中指定。
下面,可以在另一个单元中添加一个DataGrid,这里的命名为dgAbove。下面的代码加了详细注释。
With DataMConn.ADOSPTempAbove do
    begin
      ProcedureName := 'GetAbove';   //指定存储过程名称
      Parameters.Clear;              //清除原有参数
      //以下创建了两个新的参数,关于如何传递表名做为参数请参我在 数据库 分类的高级应用中写的文章。
      Parameters.CreateParameter( '@tableName',ftString,pdinput,20,0);
      Parameters.CreateParameter( '@strDate',ftString,pdinput,20,0);
      //以下为参数赋值
      Parameters.ParamByName( '@tableName').Value := tempTableName;
      Parameters.ParamByName( '@strDate').Value := strDate;
      try
        Open;   //返回结果集用open,否则用EexcProc;
      except
       begin
         ShowMessage('打开表错误');
         Exit;
       end;
      end;
    //如果没有在控件属性中设置DataSourceAbove的DataSet属性,可以在这里设置:
    //DataSourceAbove.DatSet := DataMConn.ADOSPTempAbove 
    dgAbove.DataSource := DataMConn.DataSourceAbove;
  end;


本文转自 august 51CTO博客,原文链接:http://blog.51cto.com/august/6905,如需转载请自行联系原作者
相关文章
|
存储 Oracle 关系型数据库
|
存储
我的数据访问函数库的源代码(四)—— 存储过程部分,包括存储过程的参数的封装
/* 2008 4 25 更新 */ 我的数据访问函数库的源码。整个类有1400行,原先就是分开来写的,现在更新后还是分开来发一下吧。 第四部分:存储过程部分,包括存储过程的参数,主要是对存储过程的参数的封装。
732 0