15-Oracle学习_存储过程
2013-08-22 22:34
381 查看
存储过程 StoredProcedure
存储过程(Stored Procedure)是在大型数据库系统中,
一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它
exec p;
②
begin
p;
end;
out : 输出参数
in out : 输入输出参数
(2) 就算有编译错误, 存储过程也能创建
(3) 使用 show error 查看错误
-------------------------------------
警告: 创建的过程带有编译错误。
SQL> show error
PROCEDURE P 出现错误:
1, 概念
带有名字的PL/SQL程序块.存储过程(Stored Procedure)是在大型数据库系统中,
一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它
2, 简单的存储过程
(1) 创建
create or replace procedure p is v_count number(2) := 0; begin while (v_count < 10) loop dbms_output.put_line(v_count); v_count := v_count + 1; end loop; end;
(2) 执行
①exec p;
②
begin
p;
end;
3, 带参数的存储过程
(1) 创建
create or replace procedure p (v_a in number, v_b number, v_return out number, v_temp in out number) is begin if (v_a > v_b) then v_return := v_a; else v_return := v_b; end if; v_temp := v_temp + 1; end;
(2) 执行
declare v_a number := 3; v_b number := 4; v_return number; v_temp number := 5; begin p(v_a, v_b, v_return, v_temp); dbms_output.put_line('v_return: ' || v_return); dbms_output.put_line('v_temp: ' || v_temp); end;
(3) 参数说明
in : 缺省值, 输入参数out : 输出参数
in out : 输入输出参数
3, 注意
(1) 存储过程 没有返回值(2) 就算有编译错误, 存储过程也能创建
(3) 使用 show error 查看错误
-------------------------------------
警告: 创建的过程带有编译错误。
SQL> show error
PROCEDURE P 出现错误:
4, 删除存储过程
SQL> desc p; PROCEDURE p 参数名称 类型 输入/输出默认值? ------------------------------ ----------------------- ------ -------- V_A NUMBER IN V_B NUMBER IN V_RETURN NUMBER OUT V_TEMP NUMBER IN/OUT SQL> drop procedure p; 过程已删除。
相关文章推荐
- Oracle 10g存储过程学习一
- oracle学习之路(二、存储过程)
- web 学习笔记15-JDBC大数据 批处理 存储过程 事务
- Oracle学习之存储过程
- Oracle学习 第28天 存储过程输出结果集
- 学习下oracle的存储过程增删改查操作以及java调用存储过程
- oracle--15.存储过程与存储函数
- Oracle存储过程学习
- 【Oracle 学习笔记】Day 3 存储过程及函数
- Oracle job + 存储过程学习笔记
- oracle 存储过程学习笔记
- 【oracle资料整理】--【15】存储过程和函数
- oracle 学习入门系列(1):基础,存储过程
- 【oracle学习】10.存储过程和存储函数
- 数据库oracle--存储过程的学习
- oracle 存储过程学习总结
- ORACLE函数以及存储过程学习篇
- [转载]Oracle存储过程学习
- Oracle学习-存储过程及调用
- oracle存储过程学习笔记1–基本结构