DB2存储过程与oracle的区别for as loop在db2中的使用

在oracle迁移DB2时,数据库可能会成为一个令人头大的问题,oracle就不说了,先来一个存储过程

 

create  procedure AAA(in p_name varchar(50))

begin

DECLARE  V_NAME  VARCHAR(100);

FOR C AS (
  --遍历监管分类
  SELECT DISTINCT NAME FROM ReserveConfig  
  ) DO
  SET V_NAME=C.NAME ;
  INSERT INTO TABLE_AA
    SELECT
       id,
       name

   from TABLE_bb b

   where b.NAME=V_NAME;

end for;

end

1首先,定义存储过程名称之后,后面不跟is或者as,输入参数in写在前面,varchar2改成varchar

2声明变量是在begin之后,需加declare,赋值需要set xxx = ‘’;在oracle中没有set,并且oracle是使用:=来赋值

3在oracle中可以使用for in loop,在DB2中是使用for as do end for来代替

4最后end后面不跟存储过程名称,也没有‘;’


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部