欢迎来到天天文库
浏览记录
ID:48739048
大小:251.50 KB
页数:75页
时间:2020-01-21
《PL-SQL PROGRAM.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、PL/SQL编程第一节PL/SQL块的组成第二节事务控制命令第三节PL/SQL流程控制第四节游标的使用第五节PL/SQL的异常处理第六节PL/SQL示例第七节PL/SQL编程对象第一节 程序块结构语言PL/SQL的组成PL/SQL块的组成PL/SQL语言以块为单位,块中可以嵌套子块。一个基本的PL/SQL块由3部分组成:定义部分(DECLARE),可执行部分(BEGIN),异常处理部分(EXCEPTION)。定义部分执行部分异常处理部分PL/SQL块主要内容PL/SQL块的定义部分与C语言类似,PL/SQL中使用的变量、常量、游标和异常处理的名字都必须先定义后使用。并且必须定义在以DECL
2、ARE关键字开头的定义部分。PL/SQL块的可执行部分该部分是PL/SQL块的主体,包含该块的可执行语句。该部分定义了块的功能,是必须的。由关键字BEGIN开始,EXCEPTION或END结束。PL/SQL块的异常处理部分该部分包含该块的异常处理程序(错误处理程序)。当该块程序体中的某个语句出现异常(检测到一个错误)时,他将程序控制转到异常部分的相应的异常处理程序中进行进一步的处理。该部分由关键字EXCEPTION开始,END关键字结束。定义部分简单变量定义的一般格式:[CONSTANT][[NOTNULL]{DEFAULT
3、:=}4、ession>];[说明]在PL/SQL中使用的变量、常量、游标和异常处理的名字都必须先定义后使用。定义部分是包括在关键字DECLARE和BEGIN之间的部分,每条语句后用‘;’结束。每行只能定义一个标识符。如果加上关键字CONSTANT,则表示所定义的标识符为一个常量,必须为它赋初值。标识符的命名规则与SQL的规则基本相同,即每个标识符必须以字母开头,而且不分大小写。如果定义的标识符不能为空,则必须加上关键字NOTNULL,并赋初值。为标识符赋值时,使用赋值符号‘:=’,默认值为空。Oracle中常用的基本数据类型数据类型描述Number数字型,范围10-130~10125Char字符型5、,最大2000个字符Date日期型,包括日期、小时、分、秒Long大文本Varchar2变长字符型,最大为4000个字符定义部分[示例]1、声明几个变量todayDATEnotnull:=sysdate;agenumber(3)notnull:=25;2、声明一个变量,使它的类型与某个变量或数据库基本表中某个列的数据类型一致。(不知道该变量或列的数据类型)可以使用%TYPE。DECLAREteacher_namechar(5);student_nameteacher_name%TYPE;BEGIN……ENDDECLAREnoEMP.EMPNO%TYPE;BEGIN……定义部分记录类型定义的6、一般格式:TYPEISRECORD([[NOTNULL]{DEFAULT7、:=}][,…]);[说明]标识符是定义的记录类型名;要定义记录型变量,定义方法与前面标量型变量定义一样。记录类型变量的属性引用方法是‘.’引用。定义部分[示例]1、声明记录类型和记录类型变量DECLARETYPEstudentISRECORD(idNUMBER(4)NOTNULLdefault0,--非空时必须加上缺省值。nameCHAR(10),birthdateDATE,phy8、sicsNUMBER(3),chemistryNUMBER(3));--下面定义一个student类型的变量student1student;BEGIN……2、声明一个记录型变量,使它的类型与某个基本表的数据结构一致,可以使用%ROWTYPE的形式定义。DECLAREEMP_VALUEEMP%ROWTYPE;BEGIN……引用方式:EMP_VALUE.empnoEMP_VALUE.ename定义部分可执行部分组成语句:变量赋值语句;流程控制语句;数据查询、数据操纵和事务控制语句;游标语句;赋值语句赋值赋号为‘:=’。格式:<变量>:=<表达式>;[示例]赋值的几种情况。1、标量型变量赋值TE9、ACHER_NAME:=‘LIU’;2、记录类型变量的赋值STUDENT1.NAME:=‘FAN’;STUDENT1.SEX:=TRUE;STUDENT1.PHYSICS:=90;可执行部分3、%ROWTYPE型变量的赋值EMP_VALUE.NAME:=’BLACK’;EMP_VALUE.EMPNO:=8888;EMP_VALUE.DEPTNO:=10;4、用SELECT语句为%ROWTYPE型变量整个赋值SELECT*
4、ession>];[说明]在PL/SQL中使用的变量、常量、游标和异常处理的名字都必须先定义后使用。定义部分是包括在关键字DECLARE和BEGIN之间的部分,每条语句后用‘;’结束。每行只能定义一个标识符。如果加上关键字CONSTANT,则表示所定义的标识符为一个常量,必须为它赋初值。标识符的命名规则与SQL的规则基本相同,即每个标识符必须以字母开头,而且不分大小写。如果定义的标识符不能为空,则必须加上关键字NOTNULL,并赋初值。为标识符赋值时,使用赋值符号‘:=’,默认值为空。Oracle中常用的基本数据类型数据类型描述Number数字型,范围10-130~10125Char字符型
5、,最大2000个字符Date日期型,包括日期、小时、分、秒Long大文本Varchar2变长字符型,最大为4000个字符定义部分[示例]1、声明几个变量todayDATEnotnull:=sysdate;agenumber(3)notnull:=25;2、声明一个变量,使它的类型与某个变量或数据库基本表中某个列的数据类型一致。(不知道该变量或列的数据类型)可以使用%TYPE。DECLAREteacher_namechar(5);student_nameteacher_name%TYPE;BEGIN……ENDDECLAREnoEMP.EMPNO%TYPE;BEGIN……定义部分记录类型定义的
6、一般格式:TYPEISRECORD([[NOTNULL]{DEFAULT
7、:=}][,…]);[说明]标识符是定义的记录类型名;要定义记录型变量,定义方法与前面标量型变量定义一样。记录类型变量的属性引用方法是‘.’引用。定义部分[示例]1、声明记录类型和记录类型变量DECLARETYPEstudentISRECORD(idNUMBER(4)NOTNULLdefault0,--非空时必须加上缺省值。nameCHAR(10),birthdateDATE,phy
8、sicsNUMBER(3),chemistryNUMBER(3));--下面定义一个student类型的变量student1student;BEGIN……2、声明一个记录型变量,使它的类型与某个基本表的数据结构一致,可以使用%ROWTYPE的形式定义。DECLAREEMP_VALUEEMP%ROWTYPE;BEGIN……引用方式:EMP_VALUE.empnoEMP_VALUE.ename定义部分可执行部分组成语句:变量赋值语句;流程控制语句;数据查询、数据操纵和事务控制语句;游标语句;赋值语句赋值赋号为‘:=’。格式:<变量>:=<表达式>;[示例]赋值的几种情况。1、标量型变量赋值TE
9、ACHER_NAME:=‘LIU’;2、记录类型变量的赋值STUDENT1.NAME:=‘FAN’;STUDENT1.SEX:=TRUE;STUDENT1.PHYSICS:=90;可执行部分3、%ROWTYPE型变量的赋值EMP_VALUE.NAME:=’BLACK’;EMP_VALUE.EMPNO:=8888;EMP_VALUE.DEPTNO:=10;4、用SELECT语句为%ROWTYPE型变量整个赋值SELECT*
此文档下载收益归作者所有