预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共69页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

PL/SQL编程 第二章PL/SQL编程 本章学习目标 本章将讲述PL/SQL基础语法,结构和组 件、以及如何设计并执行一个PL/SQL程 序。 本章内容安排 2.1PL/SQL简介 2.2PL/SQL语法 2.3存储过程 2.4触发器 2.5游标 2.6包 2.7函数 2.1PL/SQL简介 2.1.1PL/SQL特点 2.1.2开发及运行环境 2.1.1PL/SQL特点 1.PL/SQL的优点 (1)PL/SQL是一种高性能的基于事务处理的语言,能运行在任何Oracle 环境中,支持所有数据处理命令。通过使用PL/SQL程序单元处理SQL的 数据定义和数据控制元素。 (2)PL/SQL支持所有SQL数据类型和所有SQL函数,同时支持所有 Oracle对象类型。 (3)PL/SQL块可以被命名和存储在Oracle服务器中,同时也能被其他的 PL/SQL程序或SQL命令调用,任何客户/服务器工具都能访问PL/SQL程 序,具有很好的可重用性。 (2)可以使用Oracle数据工具管理存储在服务器中的PL/SQL程序的安全 性。可以授权或撤销数据库其他用户访问PL/SQL程序的能力。 (5)PL/SQL代码可以使用任何ASCII文本编辑器编写,所以对任何 Oracle能够运行的操作系统都是非常便利的。 2.PL/SQL的缺点 对于SQL,Oracle必须在同一时间处理每一条SQL语句,在网络环境下 这就意味作每一个独立的调用都必须被oracle服务器处理,这就占用大 量的服务器时间,同时导致网络拥挤。而PL/SQL是以整个语句块发给 服务器,这就降低了网络拥挤。 2.1.2开发及运行环境 服务器端PL/SQL不需要显式的安装或许可。它是Oracle9i 数据库的隐式部分,此处有相应的文档。 PL/SQL编译器和解释器也嵌入到OracleDeveloper中,为 开发者在客户端和服务器端提供一致的、可利用的开发模 型。 2.2PL/SQL语法 2.2.1PL/SQL块 2.2.2常量与变量 2.2.3数据类型 2.2.4运算符 2.2.5流程控制 2.2.6异常处理 2.2.1PL/SQL块 1.块结构 2、块的命名和匿名 3、块的执行 1.块结构 PL/SQL是一种块结构的语言,组成PL/SQL程序的单元是逻辑块, 一个PL/SQL程序包含了一个或多个逻辑块,每个块都可以划分为三个 部分。 (1)块的三个部分 ①声明部分(Declarationsection) 声明部分包含了变量和常量的数据类型和初始值。这个部分是由关键字 DECLARE开始,如果不需要声明变量或常量,那么可以忽略这一部分。 ②执行部分(Executablesection) 执行部分是PL/SQL块中的指令部分,由关键字BEGIN开始,所有的可 执行语句都放在这一部分,其他的PL/SQL块也可以放在这一部分。 ③异常处理部分(Exceptionsection) 这一部分是可选的,在这一部分中处理异常或错误,对异常处理的详细 讨论在后面进行。 (2)PL/SQL块语法 PL/SQL块语法结构如下: [DECLARE] declarationstatements BEGIN executablestatements [EXCEPTION] exceptionstatements END 例: declare in_idnumber(2);in_namevarchar2(20); begin in_id:=1;in_name:=‘James’; updatetestsett_name=in_namewheret_id=in_id; end; / PL/SQL块中的每一条语句都必须以分号结束,SQL语句可以多行,但分 号表示该语句的结束。一行中可以有多条SQL语句,他们之间以分号分隔。 每一个PL/SQL块由BEGIN或DECLARE开始,以END结束。注释由--标示。 2.块的命名和匿名 PL/SQL程序块可以是一个命名的程序块也可以是一个匿名程序块, 匿名程序块可以用在服务器端也可以用在客户端。 执行部分包含了所有的语句和表达式,执行部分以关键字BEGIN开 始,以关键字EXCEPTION结束,如果EXCEPTION不存在,那么将以 关键字END结束。分号分隔每一条语句,使用赋值操作符:=或SELECT INTO或FETCHINTO给每个变量赋值,执行部分的错误将在异常处理 部分解决,在执行部分中可以使用另一个PL/SQL程序块,这种程序块 被称为嵌套块。 所有的SQL数据操作语句都可以用于执行部分,PL/SQL块不能在屏 幕上显示SELECT语句的输出。SELECT语句必须包括一个INTO子串或 者是游