文档详情

第3章使用PLSQL..doc

发布:2017-01-26约7.69千字共10页下载文档
文本预览下载声明
第3章 使用PL/SQL 课程目标: 1、理解PL/SQL的用法 2、了解数据类型及其用法 3、理解逻辑比较的内容 4、理解控制结构的内容 5、了解错误处理的方法 一、PL/SQL简介。 1、PL/SQL的优点。 PL/SQL(procedural language/sql,过程语言/sql)可用于创建存储过程、触发器、程序包。与oracle服务器和oracle工具紧密集成,具备可移植性、灵活性、安全性。支持SQL、支持面向对象编程(oop)等。 2、PL/SQL块简介。 PL/SQL是一种块结构的语言,它将一组语句放在一个块中。构成PL/SQL程序的基本单元是逻辑块,该逻辑块可以包含任何数量的嵌套子块,每个逻辑块对应要解决的问题或子问题。在PL/SQL块中可以使用select、insert、update、delete等dml语句、事务控制语句、sql函数等。PL/SQL块中不允许使用create、drop、alter等ddl语句。但可以通过动态sql来执行他们。 PL/SQL块分为三个部分。 Declare …… Begin …… [ Exception …… ] end; 3、PL/SQL对大小写不敏感,代码中常用到的符号如下: := 赋值操作符号 || 连接操作符号 -- 单行注释 /* */ 多行注释 ** 求幂操作 4、声明变量 声明变量必须指定变量的数据类型,可以在声明时进行初始化。一条语句只能定义一个变量。 以下都是正确的变量定义。 declare vcode varchar2(5); /*定义变量*/ vname varchar2(25) :=’jack’; /*定义变量并赋值jack*/ rate number(7,2); /*定义数值型变量*/ start_date date; /*定义日期型变量*/ status Boolean; /*定义布尔变量*/ begin …… end; 5、给变量赋值 status:=true; start_date:=’03-07月-07’; vcode:=”003” select 某个字段 into 某变量 from 某个表 where 字段名=”值”; /*注意,上述用语句赋值必须确保查询结果返回值有且仅有一个。*/ 6、定义常量 格式:变量名 constant 数据类型 := 初始值; 比如: declare total constant number :=2000; /*定义常量number并赋值*/ begin …… end; 7、属性类型 (1)%type类型。 比如:icode item.itemcode%type /*表示icode变量的类型与表item中itemcode字段类型一致*/ (2)%rowtype类型 比如:emp_rec emp%rowtype; /*表示emp_rec变量可存储从emp表中提取的一整条记录。*/ 使用属性类型的优点。 (1)不需知道被引用的列或表的具体数据类型。 (2)如果更改了被引用对象(如表)的数据库定义,那么变量的数据类型也会随之更改。 8、比较符 关系比较符:,=,=,=,, 逻辑比较符:not and or 二、控制结构 1、条件控制 (1) if – then语句 〔格式〕 if 条件 then 语句体; end if ; (2) if – then – else语句 〔格式〕 if 条件 then 语句体1; else 语句体2; end if ; (3) if – then – elsif语句 if 条件1 then 语句体1; elsif 条件2 then 语句体2; else 语句体3; end if ; (4) case 语句 〔格式〕 case 表达式 when 表达式或值 then 语句体1; when 表达式或值 then 语句体2; ……………………; when 表达式或值 then 语句体n; [else 语句体;] end case; 比如: /*注意*/oracle中字符或字符串比较运算时是大小写敏感,其余不敏感。 Case 语句的另外一种用法是,不用选择器,而直接计算when子句中的各个比较表达式,找到第一个为true的表达式,然后执行相应的语句序列。 比如: 2、循环语句。 (1) loop……end loop循环 这种循环必须在其循环体中包含一条exit语句,否则是无限循环。 〔格式〕 loop 语句体; end loo
显示全部
相似文档