存储过程和游标.doc

存储过程和游标.doc

ID:48446732

大小:89.81 KB

页数:17页

时间:2020-01-30

存储过程和游标.doc_第1页
存储过程和游标.doc_第2页
存储过程和游标.doc_第3页
存储过程和游标.doc_第4页
存储过程和游标.doc_第5页
资源描述:

《存储过程和游标.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.我们在进行pl/sql编程时打交道最多的就是存储过程了。存储过程的结构是非常的简单的,我们在这里除了学习存储过程的基本结构外,还会学习编写存储过程时相关的一些实用的知识。如:游标的处理,异常的处理,集合的选择等等1.存储过程结构1.1第一个存储过程Java代码1.create or replace procedure proc1(  2.  p_para1 varchar2,  3.  p_para2 out varchar2,  4.  p_para3 in out varchar2  5.)a

2、s   6. v_name varchar2(20);  7.begin  8.  v_name := '张三丰';  9.  p_para3 := v_name;  10.  dbms_output.put_line('p_para3:'

3、

4、p_para3);  11.end;  createorreplaceprocedureproc1(p_para1varchar2,p_para2outvarchar2,p_para3inoutvarchar2)asv_namevarchar2(20);beg

5、inv_name:='张三丰';p_para3:=v_name;dbms_output.put_line('p_para3:'

6、

7、p_para3);end;上面就是一个最简单的存储过程。一个存储过程大体分为这么几个部分:创建语句:createorreplaceprocedure存储过程名如果没有orreplace语句,则仅仅是新建一个存储过程。如果系统存在该存储过程,则会报错。Createorreplaceprocedure如果系统中没有此存储过程就新建一个,如果系统中有此存储过程则把原来删除掉,重

8、新创建一个存储过程。存储过程名定义:包括存储过程名和参数列表。参数名和参数类型。参数名不能重复,参数传递方式:IN,OUT,INOUTIN表示输入参数,按值传递方式。OUT表示输出参数,可以理解为按引用传递方式。可以作为存储过程的输出结果,供外部调用者使用。INOUT即可作输入参数,也可作输出参数。参数的数据类型只需要指明类型名即可,不需要指定宽度。参数的宽度由外部调用者决定。过程可以有参数,也可以没有参数变量声明块:紧跟着的as(is)关键字,可以理解为pl/sql的declare关键字,用于声明

9、变量。变量声明块用于声明该存储过程需要用到的变量,它的作用域为该存储过程。另外这里声明的变量必须指定宽度。遵循PL/SQL的变量声明规范。过程语句块:从begin关键字开始为过程的语句块。存储过程的具体逻辑在这里来实现。异常处理块:关键字为exception,为处理语句产生的异常。该部分为可选结束块:由end关键字结果。1.2存储过程的参数传递方式存储过程的参数传递有三种方式:IN,OUT,INOUT.IN按值传递,并且它不允许在存储过程中被重新赋值。如果存储过程的参数没有指定存参数传递类型,默认为

10、IN..Java代码1.create or replace procedure proc1(  2.  p_para1 varchar2,  3.  p_para2 out varchar2,  4.  p_para3 in out varchar2  5.)as   6. v_name varchar2(20);  7.begin  8.  p_para1 :='aaa';  9.  p_para2 :='bbb';  10.  v_name := '张三丰';  11.  p_para3 := 

11、v_name;  12.  dbms_output.put_line('p_para3:'

12、

13、p_para3);  13.  null;  14.end;  15.      16.Warning: Procedure created with compilation errors  17.  18.SQL> show error;  19.Errors for PROCEDURE LIFEMAN.PROC1:  20.  21.LINE/COL ERROR  22.-------- -------

14、---------------------------------------------------------------  23.8/3      PLS-00363: expression 'P_PARA1' cannot be used as an assignment target  24.8/3      PL/SQL: Statement ignored  createorreplaceprocedureproc1(p_para1varchar2,p_

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。