我们在进行pl/sql编程时打交道最多的就是存储过程了。存储过程的结构是非常的简单的,我们在这里除了学习存储过程的基本结构外,还会学习编写存储过程时相关的一些实用的知识。如:游标的处理,异常的处理,集合的选择等等 1.存储过程结构 1.1 第一个存储过程
Java代码
create or replace procedure proc1(p_para1 varchar2,p_para2 out varchar2,p_para3 in out varchar2
)asv_name varchar2(20);
beginv_name := 张三丰;p_para3 := v_name;dbms_output.put_line(p_para3:||p_para3);
end;上面就是一个最简单的存储过程。一个存储过程大体分为这么几个部分: 创建语句:create or replace procedure 存储过程名 如果没有or replace语句,则仅仅是新建一个存储过程。如果系统存在该存储过程,则会报错。Create or replace procedure 如果系统中没有此存储过程就新建一个,如果系统中有此存储过程则把原来删除掉,重新创建一个存储过程。 存储过程名定义:包括存储过程名和参数列表。参数名和参数类型。参数名不能重复, 参数传递方式:IN, OUT, IN OUT IN 表示输入参数,按值传递方式。 OUT 表示输出参数,可以理解为按引用传递方式。可以作为存储过程的输出结果,供外部调用者使用。 IN OUT 即可作输入参数,也可作输出参数。 参数的数据类型只需要指明类型名即可,不需要指定宽度。 参数的宽度由外部调用者决定。 过程可以有参数,也可以没有参数 变量声明块:紧跟着的as (is )关键字,可以理解为pl/sql的declare关键字,用于声明变量。 变量声明块用于声明该存储过程需要用到的变量,它的作用域为该存储过程。另外这里声明的变量必须指定宽度。遵循PL/SQL的变量声明规范。 过程语句块:从begin 关键字开始为过程的语句块。存储过程的具体逻辑在这里来实现。 异常处理块:关键字为exception ,为处理语句产生的异常。该部分为可选 结束块:由end关键字结果。 1.2 存储过程的参数传递方式 存储过程的参数传递有三种方式:IN,OUT,IN OUT . IN 按值传递,并且它不允许在存储过程中被重新赋值。如果存储过程的参数没有指定存参数传递类型,默认为IN
Java代码
create or replace procedure proc1(p_para1 varchar2,p_para2 out varchar2,p_para3 in out varchar2
)asv_name varchar2(20);
beginp_para1 :=aaa;p_para2 :=bbb;v_name := 张三丰;p_para3 := v_name;dbms_output.put_line(p_para3:||p_para3);null;
end;Warning: Procedure created with compilation errorsSQL show error;
Errors for PROCEDURE LIFEMAN.PROC1:LINE/COL ERROR
-------- ----------------------------------------------------------------------
8/3PLS-00363: expression P_PARA1 cannot be used as an assignment target
8/3PL/SQL: Statement ignored
这一点与其它高级语言都不同。它相当于java在参数前面加上final关键字。OUT 参数:作为输出参数,需要注意,当一个参数被指定为OUT类型时,就算在调用存储过程之前对该参数进行了赋值,在存储过程中该参数的值仍然是null.
Java代码
create or replace procedure proc1(p_para1 varchar2,p_para2 out varchar2,p_para3 in out varchar2
)asv_name varchar2(20);
beginv_name := 张三丰;p_para3 := v_name;dbms_output.put_line(p_para1:||p_para1);dbms_output.put_line(
您可能关注的文档
- 知觉的特点.pptx
- 知识讲座1期.doc
- 短信通短信接口.doc
- 短信接入平台调查.pptx
- 着装要求PPT.pptx
- 短信服务 041104_短信服务.ppt
- 安全文化示范企业创建课件.pptx
- 短培班普通话讲稿.ppt
- 安全与卫生 一年级.doc
- 汽车发动机构造与维修课件方案.ppt
- 高中化学教学中的项目式学习:化学反应原理在材料设计中的应用案例论文.docx
- 高中古诗词教学中的文化内涵解读与应用研究论文.docx
- 高中政治法治教育中法治意识培养的实践案例研究论文.docx
- 高中物理实验技能培养与核心素养评价体系构建研究论文.docx
- 初中数学:《SEIR模型在初中数学概率统计教学中的应用研究》论文.docx
- 高中艺术教育在学生审美教育中的实践策略与实践效果评估论文.docx
- 《传统游戏在高中综合素质教育中的应用研究》论文.docx
- 小学数学观察与数学思维发展研究论文.docx
- 校园植物与初中地理教学中生态环境教育的实践研究论文.docx
- 初中语文群文阅读教学中的阅读策略与写作能力提升研究论文.docx
最近下载
- 初中英语衡水体作文范文10篇.pdf VIP
- 基层工会预决算填报操作手册(2024.02).pdf
- 品胜加盟条件要领.pdf VIP
- 2026年党支部在改作风树新风等“对照5个方面”存在的问题及整改措施普通党员对照检查材料(五个对照)2篇例文.docx VIP
- 建筑公司员工手册(完整版).docx VIP
- 外研新交际英语(2024)新教材小学一年级英语下册Unit 1 课时3教学设计.docx VIP
- (正式版)DB12∕T 1361-2024 《地热尾水回灌技术规程》.pdf VIP
- 2026年教科版三年级科学下册(全册)教学设计(附教材目录).pdf VIP
- GB_T 25849-2024 移动式升降工作平台 设计、计算、安全要求和试验方法.pdf VIP
- 安全生产监管培训课件.pptx VIP
原创力文档

文档评论(0)