收藏 分销(赏)

Oracle SQL&PLSQL课件:第15章 PL-SQL变量.ppt

上传人:可**** 文档编号:7904833 上传时间:2025-01-25 格式:PPT 页数:32 大小:2.32MB
下载 相关 举报
Oracle SQL&PLSQL课件:第15章 PL-SQL变量.ppt_第1页
第1页 / 共32页
Oracle SQL&PLSQL课件:第15章 PL-SQL变量.ppt_第2页
第2页 / 共32页
Oracle SQL&PLSQL课件:第15章 PL-SQL变量.ppt_第3页
第3页 / 共32页
Oracle SQL&PLSQL课件:第15章 PL-SQL变量.ppt_第4页
第4页 / 共32页
Oracle SQL&PLSQL课件:第15章 PL-SQL变量.ppt_第5页
第5页 / 共32页
点击查看更多>>
资源描述

1、单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,Oracle SQL&PL/SQL,第,15,章,PL/SQL,简介及其,变量,了解,PL/SQL,的基本体系结构,掌握,PL/SQL,块的,基本组成部分,区分,PL/SQL,变量和非,PL/SQL,变量,声明,PL/SQL,变量,理解,%,TYPE,属性,本章要点,PL/SQL,体系结构,PL/SQL,运行系统是一种技术,不是一种独立产,品,可认为这种技术是,PL/SQL,快和子程序的一,种机,它可接收任何有效的,PL/SQL,块或,子程序。,PL/SQL,机可执行过程性语句,而将,SQL,语句发送到,O

2、racle,服务器上的,SQL,语句执行器。,PL/SQL,块结构,DECLARE,可选,变量、游标、用户自定义的特殊类型,BEGIN,必须,SQL,语句,PL/SQL,语句,EXCEPTION,可选,错误发生时的处理动作,END;,必须,DECLARE,BEGIN,EXCEPTION,END;,可选的,该部分给出当在执行部分发生错误或出现异常情况,时的具体处理动,作。,异常处理部分,必须的,该部分包括,SQL,语句(用于处理数据库中的数据)及,PL/SQL,语句(用于处理块中的数据)。,执行部分,可选的,该部分包括所有在声明、执行部分所用到的变量、常量、游标以及用户自定义的特殊类型。,声明部

3、分,备注,描述,块结构,PL/SQL,块结构,DECLARE,v_variable VARCHAR2(5);,BEGIN,SELECTcolumn_name,INTOv_variable,FROMtable_name;,EXCEPTION,WHEN exception_name THEN,.,END;,DECLARE,BEGIN,EXCEPTION,END;,块的类型,匿名块 过程 函数,DECLARE,BEGIN,-statements,EXCEPTION,END;,PROCEDURE name,IS,BEGIN,-statements,EXCEPTION,END;,FUNCTION nam

4、e,RETURN,datatype,IS,BEGIN,-statements,RETURN value;,EXCEPTION,END;,程序结构,匿名块,应用程序,触发器,已存储的,过程,/,函数,数据库,触发器,应用程序中的,过程,/,函数,打包的,过程,/,函数,DECLARE,BEGIN,EXCEPTION,END;,Developer/2000,组件,-,例如,表单,PL/SQL,块,与应用程序有关;能自动执行。,应用程序,触发器,Oracle,服务器,PL/SQL,块,与数据库中的表有关;由,DML,语句触发,自动执行。,数据库,触发器,Oracle,服务器和,Developer/2

5、000,组件,-,例如,表单,有命名的,PL/SQL,模块,是一组相关的过程、函数和标识符。,包,Developer/2000,组件,-,例如,表单,有命名的,PL/SQL,块,存储在,Developer/2000,应用程序中或被库共享;可通过名字被重复调用。,应用程序中的,过程,/,函数,Oracle,服务器,有命名的,PL/SQL,块;存储在,Oracle,服务器中;能接受参数;可通过名字被重复调用。,已存储的,过程,/,函数,所有,PL/SQL,环境,未被命名的,PL/SQL,块;可嵌入到应用程序中亦可交互使用。,匿名块,适用性,描述,程序结构,变量的使用,变量用于,:,数据的临时存储,

6、对其值的操作,重复使用,易于维护,PL/SQL,中的变量的操作,在声明部分声明并初始化变量。,在执行部分为变量指派新值。,通过参数把值传递给,PL/SQL,块。,通过输出变量显示结果。,变量的类型,PL/SQL,变量,标量型,复合型,引用型,LOB,型,(,大型的对象,),外部变量,绑定变量和主变量,TRUE,变量类型,25-OCT-99,Atlanta,“,Four score and seven years ago,our fathers brought forth upon,this continent,a new nation,conceived in LIBERTY,and dedi

7、cated,to the proposition that all men,are created equal.,”,256120.08,声明,PL/SQL,变量,语法,举例,identifier,CONSTANT,datatype,NOT NULL,:=|DEFAULT,expr,;,Declare,v_,hiredate,DATE;,v_,deptno,NUMBER(2)NOT NULL:=10;,v_locationVARCHAR2(13):=Atlanta;,c_,comm,CONSTANT NUMBER:=1400;,声明,PL/SQL Variables,规则,遵循命名的惯例。,初

8、始化,NOT NULL,型变量。,用赋值操作符,(:=),或用,DEFAULT,关键字给变量赋初始值。,每行至多声明一个标识符。,命名规则,不同块中的两个变量可以同名。,变量的名字(标识符)不能与块中表的列同名。,DECLARE,empno,NUMBER(4);,BEGIN,SELECT,empno,INTO,empno,FROM,emp,WHERE,ename,=SMITH;,END;,变量的赋值,v_,ename,:=,Maduro,;,v_,hiredate,:=31-DEC-98;,语法,expr,可以是变量、文字和函数调用,但不可以是数据库中的列,可可以是变量、文字或函数调用,但不可

9、以是数据库中的列。以是变量,举例,为新员工设定雇佣的日期,员工的名字设定为“,Maduro,”,identifier:=,expr,;,变量的赋值,另外一种为变量赋值的方式是从数据库中选取值赋给变量。语法:,SELECT column INTO variable,FROM table WHERE condition;,SELECT,语句执行后,将出现下列情况之一:,只检索了一行,检索了多行,不检索任何行,只有当检索一行时,,SELECT,才成功操作。,变量的初始化和关键字,使用,:=,(赋值操作符),DEFAULT(,缺省),NOT NULL(,非空),标量类型,仅有一个值,内部没有分量,25

10、-OCT-99,Atlanta,“,Four score and seven years,ago our fathers brought,forth upon this continent,a,new nation,conceived in,LIBERTY,and dedicated to,the proposition that all men,are created equal.,”,TRUE,256120.08,基本标量类型,VARCHAR2(,最大长度,),NUMBER(,精度,刻度,),DATE,CHAR(,最大长度,),LONG,LONG RAW,BOOLEAN,BINARY_IN

11、TEGER,PLS_INTEGER,数据类型,描述,VARCHAR2(,最大长度),变长字符的基本类型,最大的存储数据是,32767,字节。,VARCHAR2,型的,变量和常量没有默认的长度。,NUMBER(,精度,刻度,),整数和浮点数的基本类型。,DATE,日期和时间的基本类型。,DATE,类型来存储包含从一天的午夜开始的定长的时间。有效的时间范围是从公元前,4712年1月1,号开始到公元,9999年12月31,号。,CHAR(,最大长度,),固定长度字符数据的基本类型,最大有,32767,字节。如果没有指定的最大值,缺省值为,1。,LONG,变长字符串的基本类型,最大长度是,32760,

12、字节。,LONG,型的数据库列的最大长度是,2147483647,字节。,LONG RAW,二进制数据和字节字符串的基本类型,最大字节为,32760。,PL/SQL,不能解释,LONG RAW,型的数据。,BOOLEAN,存储逻辑值,TRUE、FALSE,和,NULL,的基本类型。,BINARY_INTEGER,介于,-2147483647和2147483647,之间整数的基本类型。,PLS_INTEGER,介于,-2147483647和2147483647,之间有符号的整数的基本类型。与,NUMBER,和,BINARY_INTEGER,相比,,PLS_INTEGER,占有较少的存储空间且运行

13、效率高。,标量型变量的声明,v_jobVARCHAR2(9);,v_countBINARY_INTEGER:=0;,v_total_,sal,NUMBER(9,2):=0;,v_,orderdate,DATE:=SYSDATE+7;,c_tax_rateCONSTANT NUMBER(3,2):=8.25;,v_validBOOLEAN NOT NULL:=TRUE;,举例,%,TYPE,的属性,声明的变量对应于,:,数据库的列,其它先前声明过的变量,在%,TYPE,前缀上,:,数据库中表和列名,先前声明过的变量名,用%,TYPE,声明变量,举例,.,v_,enameemp,.,ename,%

14、TYPE;,v_balanceNUMBER(7,2);,v_min_balancev_balance%TYPE:=10;,.,声明布尔型变量,布尔型变量仅有三个值,TRUE、FALSE,和,NULL.,布尔型变量由逻辑运算符,AND、OR,和,NOT,连接,.,布尔型变量输出三个值,TRUE、FALSE,或,NULL.,算术、字符和日期表达式可以返回一个布尔值。,复合类型,类型,PL/SQL,表,PL/SQL,记录,LOB,型变量,食谱,(,CLOB),照片,(,BLOB),电影,(,BFILE),NCLOB,外部变量,Server,外部变量,外部变量是在某一程序的主环境下声明的一种变量。,引

15、用外部变量,SQL VARIABLE,emp,_num NUMBER,SQL BEGIN,2 SELECT COUNT(*)INTO:,emp,_num,3 FROM,emp,;,4 END;,5 /,PL/SQL,过程已成功完成。,SQL PRINT,emp,_num,EMP_NUM,-,13,概要,PL/SQL,块由,以下各部分构成:,声明部分,(,可选的,),执行部分,(,必须的,),异常处理部分,(,可选的,),一个,PL/SQL,块,可以是一个匿名块、过程或函数。,DECLARE,BEGIN,EXCEPTION,END;,小结,PL/SQL I,标识符,:,在声明部分定义,可以是标量型、复合型,、,引用型或,LOB,型,其结构可以基于其他变量或数据库对象,可以被初始化,

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服