小问题我始终没解决在delphi6里的bde里有个StoredProc构件,我的数据库是sql7.0里边有100个储存过程,我如何才能利用StoredProc动态修改

liuyongpc 2003-08-23 01:48:30
在delphi6里的bde里有个StoredProc构件,我的数据库是sql7.0里边有100个储存过程,我如何才能利用StoredProc动态修改参数和赋值运行呢?请问你能给我动态加参数额的方法吗?运行后如有返回多个数据集又怎么处理呢?
...全文
19 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxh00789 2003-08-23
  • 打赏
  • 举报
回复
UP
delphi0302 2003-08-23
  • 打赏
  • 举报
回复
with ADOStoredProc1 do
begin
Close;
ProcedureName := 'Sp_GeRXM_XMZT';
Parameters.Clear;
Parameters.CreateParameter('LXKaiShShJSql', ftString,
pdInput, 200, LXKaiShShJSql);
Parameters.CreateParameter('SBJieShShJSql', ftString,
pdInput, 200, SBJieShShJSql);
end;
ADOStoredProc1.Open;
huojiehai 2003-08-23
  • 打赏
  • 举报
回复
StoredProc.params.clear
with StoredProc.params.Add do
begin
name := ..;
datatype := ..
end;
liuyongpc 2003-08-23
  • 打赏
  • 举报
回复
query我已经解决问题,但为了提高效率请各位大侠看看用StoredProc能不能把问题解决呢?
liuyongpc 2003-08-23
  • 打赏
  • 举报
回复
zousoft(凶狠汤) :SELECT * FROM procedure_name; 如何把值传入呢?
如使用Query1则返值,edit1.Text:= Query1.Fieldbyname('字段').asstring ;
就会说找不到字段
tiexinliu 2003-08-23
  • 打赏
  • 举报
回复
把存储过程当做普通的sql语句:
exec yourprocedurename :var1,:var2,:var3
Query1.ParamByName('var1').AsString:asXXXX:=your_param_value
............


yujohny 2003-08-23
  • 打赏
  • 举报
回复
这样的话用Query好点,这样可以动态设置SQL语句,这样就可以动态改执行的存储过程名

语句是 EXEC 存储过程名 参数
zousoft 2003-08-23
  • 打赏
  • 举报
回复
例如:
SELECT * FROM procedure_name; //返回数据集的过程
EXECUTE PROCEDURE procedure_name :input RETURNING_VALUES :output; //执行命令的过程
zousoft 2003-08-23
  • 打赏
  • 举报
回复
要是真的那么复杂,我建议你用query,直接用select调用存储过程。

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧