Oracle存储过程从入门到精通剖析ppt课件.ppt

Oracle存储过程从入门到精通剖析ppt课件.ppt

ID:59416093

大小:132.50 KB

页数:34页

时间:2020-09-19

Oracle存储过程从入门到精通剖析ppt课件.ppt_第1页
Oracle存储过程从入门到精通剖析ppt课件.ppt_第2页
Oracle存储过程从入门到精通剖析ppt课件.ppt_第3页
Oracle存储过程从入门到精通剖析ppt课件.ppt_第4页
Oracle存储过程从入门到精通剖析ppt课件.ppt_第5页
资源描述:

《Oracle存储过程从入门到精通剖析ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Oracle存储过程基础培训目录1、我们为什么要用存储过程?2、存储过程是如何定义和维护的?3、我们如何调用存储过程?4、存储过程中常用的复合数据处理方式及CTE5、存储过程如何进行异常处理?6、存储过程如何进行事务处理?7、我们应如何优化存储过程?1、我们为什么要用存储过程?存储过程是指用于特定操作的PL/SQL块,是由流控制和SQL语句书写的过程。存储过程经编译和SQL优化后存储在数据库服务器中,使用时只要调用即可。在Oracle数据库中,若干个有联系的存储过程,可以组合在一起构成包。1、我们为什么要用存储过程?存储

2、过程具有如下特点:1)存储过程是预编译过的,并且经优化后存储于SQL内存中,使用时无需再次编译,提高了工作效率;2)存储过程的代码直接存放于数据库中,一般由客户端直接通过存储过程的名字进行调用,减少了网络流量,加快了系统执行速度,例如在进行百万以上的大批量数据查询时,使用存储过程分页要比其他方式分页快得多;3)使用存储过程可以减少SQL注入式攻击,提高了系统的安全性,执行存储过程的用户要具有一定的权限才能使用存储过程,没有数据操作权限的用户只能在其控制下间接地存取数据;1、我们为什么要用存储过程?4)在同时进行主、从表及

3、多表间的数据维护及有效性验证时,使用存储过程比较方便,而且可以有效利用SQL中的事务处理的机制;5)使用存储过程,可以实现存储过程设计和编码工作分开进行,只要将存储过程名、参数、及返回信息告诉编码人员即可;6)但使用存储过程封装业务逻辑将限制应用程序的可移植性;另外,如果更改存储过程的参数或者其返回的数据及类型的话,需要修改应用程序的相关代码,比较繁琐。2、存储过程是如何进行定义和维护的?存储过程的定义:CREATE[ORREPLACE]PROCEDUREprocedure_name [(parameter1[model

4、]datatype1,parameter2[model]datatype2...)] IS[AS] BEGIN PL/SQLBlock; END[procedure_name];其中:procedure_name是存储过程的名字,parameter用于指定参数,model用于指定参数模式,datatype用于指定参数类型,IS[AS]用于开始PL/SQL代码块。注:当定义存储过程的参数时,只能指定数据类型,不能指定数据长度2、存储过程是如何进行定义和维护的?1)建立存储过程时,既可以指定存储过程的参数,也可以不提供任何参

5、数。2)存储过程的参数主要有三种类型:输入参数(IN)、输出参数(OUT)、输入输出参数(INOUT),其中IN用于接收调用环境的输入参数,OUT用于将输出数据传递到调用环境,INOUT不仅要接收数据,而且要输出数据到调用环境。3)在建立存储过程时,输入参数的IN可以省略。2、存储过程是如何进行定义和维护的?CREATEORREPLACEPROCEDUREUSP_OutTimeISBEGINDBMS_OUTPUT.PUT_LINE(SYSDATE);ENDUSP_OutTime;2、存储过程是如何进行定义和维护的?CRE

6、ATEORREPLACEPROCEDUREUSP_Learing(p_para1varchar2:='参数一',p_para2nvarchar2default'参数二',p_para3outvarchar2,p_para4inoutvarchar2)ISBEGINDECLAREv_para5varchar2(20);BEGINv_para5:='输入输出:'

7、

8、p_para4;p_para3:='输出:'

9、

10、p_para1

11、

12、p_para2;p_para4:=v_para5;END;ENDUSP_Learing;2、存储

13、过程是如何进行定义和维护的?存储过程的维护:1)删除存储过程DROPPROCEDUREprocedure_name;2)编译存储过程ALTERPROCEDUREprocedure_nameCOMPILE;3)与存储过程相关的几个查询--查看无效的存储过程SELECTobject_nameFROMUSER_OBJECTSWHERESTATUS='INVALID'ANDOBJECT_TYPE='PROCEDURE'--查看存储过程的代码SELECTTEXTFROMUSER_SOURCEWHERENAME=procedure_

14、name其中:procedure_name是存储过程的名字3、如何调用存储过程当在SQL*PLUS中调用存储过程时,需要使用CALL或EXECUTE命令,而在PL/SQL块中可以直接引用。当调用存储过程时,如果无参数,那么直接引用存储过程名;如果存储过程带有输入参数,那么需要为输入参数提供数据值;如果存储过程带有输出

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

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

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