Oracle 11g数据库管理与开发基础教程 教学课件 作者 袁鹏飞 第12章.ppt

Oracle 11g数据库管理与开发基础教程 教学课件 作者 袁鹏飞 第12章.ppt

ID:50020330

大小:753.50 KB

页数:97页

时间:2020-03-07

Oracle 11g数据库管理与开发基础教程 教学课件 作者 袁鹏飞 第12章.ppt_第1页
Oracle 11g数据库管理与开发基础教程 教学课件 作者 袁鹏飞 第12章.ppt_第2页
Oracle 11g数据库管理与开发基础教程 教学课件 作者 袁鹏飞 第12章.ppt_第3页
Oracle 11g数据库管理与开发基础教程 教学课件 作者 袁鹏飞 第12章.ppt_第4页
Oracle 11g数据库管理与开发基础教程 教学课件 作者 袁鹏飞 第12章.ppt_第5页
资源描述:

《Oracle 11g数据库管理与开发基础教程 教学课件 作者 袁鹏飞 第12章.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、Oracle11g数据库管理与开发基础教程授课教师:职务:第12章PL/SQL基础课程描述PL/SQL(ProceduralLanguageextensionstoSQL)就是Oracle对SQL的过程化扩展,是专门用于Oracle产品的数据库编程语言。本章将介绍PL/SQL程序设计语言的基本概念、PL/SQL程序设计和开发等内容。本章知识点视图的基本概念和分类视图的创建视图的修改和删除内嵌视图和对象视图的应用12.1PL/SQL基础PL/SQL(ProceduralLanguageextensionstoSQL)语言是Oracle对SQL语言的过程化扩展,是专门用于

2、Oracle产品的数据库编程语言。在PL/SQL语言中,既可以通过SQL语言实现对数据库的操作,也可以通过过程化语言中的复杂结构完成复杂的业务逻辑。12.1.1程序结构PL/SQL程序的基本结构是块,所有PL/SQL程序都是由块组成的。一个完整的PL/SQL块由三个部分组成:声明部分、执行部分和异常处理部分。描述:[DECLARE]/*声明部分,声明变量、数据类型、异常、局部子程序等*/…BEGIN/*执行部分,实现块的功能*/…[EXCEPTION]/*异常处理部分,处理程序执行过程中产生的异常*/…END;/*程序结束标记*/参数说明:DECLARE部分和EXCE

3、PTION部分是可选的,BEGIN…END是必须的;所有PL/SQL程序块都以“END;”结束,因此,需要使用斜杠(/)结尾以结束编辑状态并执行程序块。例如,定义一个PL/SQL程序块,以输出图书的作者名:BOOKS_PUB@orcl_dbs>DECLARE2v_authorfnameVARCHAR2(20);3v_authorlnameVARCHAR2(40);4BEGIN5SELECTauthor_fname,author_lname6INTOv_authorfname,v_authorlname7FROMauthors8WHEREauthor_id='81000

4、1';9DBMS_OUTPUT.PUT_LINE(v_authorlname

5、

6、10v_authorfname);11END;12/欧阳平PL/SQL过程已成功完成。12.1.2数据类型PL/SQL数据类型与SQL数据类型有很多相同之处,除此之外,PL/SQL还有一些特定的数据类型,这些数据类型如表12-1所示。数据类型描述BOOLEAN布尔型,这是PL/SQL程序块中才能使用的数据类型,在数据库列上不能使用这种数据类型。BOOLEAN变量的取值为TRUE、FALSE或NULLBINARY_INTEGER带符号整数,取值范围为-231~231。这种类型的数据是以2的补

7、码二进制格式存储的,当不需要在数据库中存储整个数值,但是要在算术运算中使用这个数值时,建议使用这种数据类型PLS_INTEGER带符号整数,取值范围为-231~231。它与BINARY_INTEGER类似,都比NUMBER类型表示的范围小,占用更少的内存。当使用PLS_INTEGER值时,如果算法发生溢出,会触发异常SIMPLE_INTEGER这是OracleDatabase11g新增的数据类型,它是BINARY_INTEGER的子类型,其取值范围与BINARY_INTEGER相同,但不能存储NULL值。当使用SIMPLE_INTEGER值时,如果算法发生溢出,不会触

8、发异常,只会简单地截断结果STRING与VARCHAR2相同,主要用于存储本地数据库字符集的字符,可以使用该类型与ANSI/ISO类型兼容RECORD记录类型,类似于C语言中的结构体,是一个包含一组其他类型的复合类型。在PL/SQL中使用RECORD类型时,要先在声明部分定义RECORD结构以及设置该类型的变量,然后在执行部分引用该记录变量或成员分量REFCURSOR游标引用类型,类似于其他高级程序设计语言中的指针。REFCURSOR是指向一个行集的指针。利用引用类型变量可以使应用程序共享相同的存储空间,提高程序的运行效率%TYPE、%ROWTYPE严格来说,%TYP

9、E和%ROWTYPE并不属于一种数据类型,在PL/SQL中声明变量时使用它们来取其他变量或列的类型,其中,%TYPE类型用于隐式地将变量的数据类型声明为与其他变量或数据库表中对应列类型相同的数据类型;在声明记录类型变量时使用%ROWTYPE把该变量声明为与另一记录变量或表的结构相同12.1.3声明变量与常量定义变量或常量的语法为:variable_name[CONSTANT]datatype[NOTNULL][{:=

10、DEFAULT}value];参数说明:variable_name:指出声明的变量或常量名,它必须符合Oracle标识符命名规范;CO

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

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

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