暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

执行procedure 动态传入参数

原创 Anbob 2011-03-01
417
关键字: 存储过程调用存储过程 游标 cursor  绑定变量 动态传入参数
以前自己写过一个参数过程,不过是只处理单条数据,今天遇到要批量数据要处理,懒 有时也是一种优点,懒就会想法减少工作量,所以把数据导入数据表中,再批量调用,平时很少用游标遇到点问题,还好网友帮忙,在此分享。
------------------------
DECLARE
v_id     INT;
v_name   VARCHAR2 (50);
v_sql    VARCHAR2 (200);
CURSOR cur
IS
SELECT org.ID, te
FROM tmd LEFT JOIN topbox_organization org
ON tmd.c = org.NAME AND org.ID LIKE '500%' AND TYPE = 3
;
BEGIN
FOR c_items IN cur
LOOP
--  DBMS_OUTPUT.PUT_LINE(c_items.id||c_items.te);
v_id :=c_items.id;
v_name:=c_items.te;
--DBMS_OUTPUT.PUT_LINE(v_id);

v_sql:=' begin add_org(:1,:2,4,12,4); end;';
execute  immediate  v_sql using v_id,v_name;


--   add_org(v_id ,v_name,4,12,4) 这样应该也可以
END LOOP;
END;
重点:
发现动态sql调用procedure 要用 begin end;哎
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论