oracle存储过程的常用语法 (转)http://www.cnblogs.com/firstyi/archive/2007/07/12/815255.html
create or replace procedure sp_test
(
---参数in 表示输入参数,out表示表示输入参数 类型可以使用oracle 任意的合法类型
aa in varchar,
bb in number default 0
) is
---定义变量(可以遍历的结果集)
v_pos varchar(50);
v_num number;
---指定游标
begin
---字符串查找和替换
select SUBSTR(PARAMETER, 1, INSTR(PARAMETER,branchId)-2) ||
SUBSTR(PARAMETER, INSTR(PARAMETER,branchId)+length(branchId)) into v_pos from dual;
---循环的使用
loop
if bb is null then ---if 判断
exit; ---退出循环
end if;
if v_num >= bb then
exit;
end if;
v_num := v_num +1;
end loop;
---输出信息
dbms_output.put_line('aaaaa');
..
commit;
exception
when NO_DATA_FOUND then --没有记录的异常
dbms_output.put_line('ddddd');
when others then
begin
--输出错误信息
dbms_output.put_line(sqlerrm);
rollback;
---抛出异常
raise;
end;
end sp_test;
本文提供了一个Oracle存储过程的示例代码,展示了如何创建带有输入参数的存储过程,并使用了如变量定义、字符串操作、循环控制及异常处理等基本语法元素。

被折叠的 条评论
为什么被折叠?



