DB2存储过程与oracle的区别for as loop在db2中的使用 ╰半夏微凉° 2022-05-29 11:18 157阅读 0赞 在oracle迁移DB2时,数据库可能会成为一个令人头大的问题,oracle就不说了,先来一个存储过程 <table> <tbody> <tr> <td> <p>create procedure AAA(in p_name varchar(50))</p> <p>begin</p> <p>DECLARE V_NAME VARCHAR(100);</p> <p>FOR C AS (<br> --遍历监管分类<br> SELECT DISTINCT NAME FROM ReserveConfig <br> ) DO<br> SET V_NAME=C.NAME ;<br> INSERT INTO TABLE_AA<br> SELECT<br> id,<br> name</p> <p> from TABLE_bb b</p> <p> where b.NAME=V_NAME;</p> <p>end for;</p> <p>end</p> </td> </tr> </tbody> </table> 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后面不跟存储过程名称,也没有‘;’
还没有评论,来说两句吧...