欢迎来到天天文库
浏览记录
ID:41344758
大小:209.00 KB
页数:29页
时间:2019-08-22
《PL-SQL与存储过程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库原理DatabasePrinciples第十一章PL/SQL与存储过程9/30/20211扩展SQL的数据处理能力PLProceduralLanguage?ProgrammingLanguage?Oracle在1992年引入PL/SQL9/30/20212PL/SQL扩展了控制语句,使得SQL具有程序模块结构语言特征,包括异常处理PL/SQL语句与其它现代编程语言(C,java)的语句类似存储过程用PL/SQL编写,编译、优化后存储在数据库服务器中是数据库中可执行(PERFORMPROCEDURE语句)的对象9/30
2、/20213第十一章PL/SQL与存储过程11.1PL/SQL的块结构11.2变量常量的定义11.3控制结构11.4存储过程11.5小结9/30/2021411.1PL/SQL的块结构PL/SQL:SQL的扩展增加了过程化语句功能基本结构是块块之间可以互相嵌套每个块完成一个逻辑操作9/30/20215PL/SQL的块结构(续)PL/SOL块的基本结构:1.定义部分DECLARE------变量、常量、游标、异常等定义的变量、常量等只能在该基本块中使用当基本块执行结束时,定义就不再存在9/30/20216PL/SQL的块结构(
3、续)PL/SOL块的基本结构(续):2.执行部分BEGIN------SQL语句、PL/SQL的流程控制语句EXCEPTION------异常处理部分END;9/30/20217第十一章PL/SQL与存储过程11.1PL/SQL的块结构11.2变量常量的定义11.3控制结构11.4存储过程11.5小结9/30/2021811.2变量常量的定义1.PL/SQL中定义变量的语法形式是:变量名数据类型[[NOTNULL]:=初值表达式]或变量名数据类型[[NOTNULL]初值表达式]2.常量的定义类似于变量的定义:常量名数据类型C
4、ONSTANT:=常量表达式常量必须要给一个值,并且该值在存在期间或常量的作用域内不能改变。如果试图修改它,PL/SQL将返回一个异常。3.赋值语句变量名称:=表达式9/30/20219第十一章PL/SQL与存储过程11.1PL/SQL的块结构11.2变量常量的定义11.3控制结构11.4存储过程11.5小结9/30/20211011.3控制结构PL/SQL功能:一、条件控制语句二、循环控制语句三、错误处理9/30/202111控制结构(续)一、条件控制语句IF-THEN,IF-THEN-ELSE和嵌套的IF语句1.IFco
5、nditionTHENSequence_of_statements;ENDIF2.IFconditionTHENSequence_of_statements1;ELSESequence_of_statements2;ENDIF;3.在THEN和ELSE子句中还可以再包括IF语句,即IF语句可以嵌套9/30/202112控制结构(续)二、循环控制语句LOOP,WHILE-LOOP和FOR-LOOP1.最简单的循环语句LOOPLOOPSequence_of_statements;ENDLOOP;多数数据库服务器的PL/SQL都提
6、供EXIT、BREAK或LEAVE等循环结束语句,保证LOOP语句块能够结束。9/30/202113控制结构(续)二、循环控制语句(续)2.WHILE-LOOPWHILEconditionLOOPSequence_of_statements;ENDLOOP;每次执行循环体语句之前,首先对条件进行求值如果条件为真,则执行循环体内的语句序列。如果条件为假,则跳过循环并把控制传递给下一个语句3.FOR-LOOPFORcountIN[REVERSE]bound1…bound2LOOPSequence_of_statements;EN
7、DLOOP;9/30/202114控制结构(续)三、错误处理:如果PL/SQL在执行时出现异常,则应该让程序在产生异常的语句处停下来,根据异常的类型去执行异常处理语句SQL标准对数据库服务器提供什么样的异常处理做出了建议,要求PL/SQL管理器提供完善的异常处理机制9/30/202115第十一章PL/SQL与存储过程11.1PL/SQL的块结构11.2变量常量的定义11.3控制结构11.4存储过程11.5小结9/30/20211611.4存储过程PL/SQL块类型:命名块:编译后保存在数据库中,可以被反复调用,运行速度较快。
8、存储过程和函数是命名块匿名块:每次执行时都要进行编译,它不能被存储到数据库中,也不能在其他的PL/SQL块中调用9/30/202117存储过程(续)一、存储过程的优点二、存储过程的用户接口三、游标9/30/202118存储过程(续)存储过程:由PL/SQL语句书写的过程,经编译和优化后存储
此文档下载收益归作者所有