其他语言

位置:IT落伍者 >> 其他语言 >> 浏览文章

Delphi存储过程调用


发布日期:2019年11月07日
 
Delphi存储过程调用

网上对该问题的帖子很多但是经常不是很全面笔者在使用时也遇到了很多实际问题比如参数不存在啊类型没有引用啊等等下面我尽量细致地来通过例子实现一下如果还有不正确的地方希望得到高手指点

首先我们使用一种简单的方式即通过控件的方式来定义存储过程和数据源

新建一个单元命名为DataMConn在加入一个ADO单元下的ADOStoredProc这里命名为ADOSPTempAbove 再加入Data Access单元下的一个DataSource这里命名为DataSourceAbove设置DataSourceAbove的DataSet属性为ADOSPTempAbove当然这个属性也可以在程序中指定

下面可以在另一个单元中添加一个DataGrid这里的命名为dgAbove下面的代码加了详细注释

With DataMConnADOSPTempAbove do

begin

ProcedureName := GetAbove; //指定存储过程名称

ParametersClear; //清除原有参数

//以下创建了两个新的参数关于如何传递表名做为参数请参我在 数据库 分类的高级应用中写的文章

ParametersCreateParameter(@tableNameftStringpdinput);

ParametersCreateParameter(@strDateftStringpdinput);

//以下为参数赋值

ParametersParamByName(@tableName)Value := tempTableName;

ParametersParamByName(@strDate)Value := strDate;

try

Open; //返回结果集用open否则用EexcProc

except

begin

ShowMessage(打开表错误);

Exit;

end;

end;

//如果没有在控件属性中设置DataSourceAbove的DataSet属性可以在这里设置

//DataSourceAboveDatSet := DataMConnADOSPTempAbove

dgAboveDataSource := DataMConnDataSourceAbove;

end;

上一篇:谈Delphi编程中资源文件的应用

下一篇:Delphi 编程技巧常见实例问答