PLSQL_简介

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Version3.0PL/SQLPL/SQL简介简介第六章22回顾回顾第五章-Oracle中的OOP概念•面向对象的功能–封装、多态和继承•Oracle支持各种各样的对象•抽象数据类型是包含一种戒多种子类型的数据类型•可变数组允许在单个行中存储某个记录的重复属性•嵌套表是表中的表。表在另一个表中被表示为行•嵌套表对条目数没有限制•对象视图允许在仅使用关系表的应用程序中实现面向对象的概念•行对象不是嵌入对象33目标目标•PL/SQL简介•数据类型及其用法•逻辑比较•控制结构•错误处理简介44PL/SQLPL/SQL简介简介•PL/SQL代表ProceduralLanguage/SQL(ProceduralLanguage:过程语言)•它是对SQL的扩展•PL/SQL中存在过程构造和数据库访问•在Oracle服务器和客户机应用程序中使用•支持大型对象和集合55PL/SQLPL/SQL的优点的优点•支持对象类型和集合•调用外部函数和过程•支持SQL•支持OOP•更高生产率•更佳性能•可移植性•与Oracle集成在一起•严密的安全性66PL/SQLPL/SQL的体系结构的体系结构22--11SQL语句执行器主程序或ORACLE工具匿名PL/SQL块匿名PL/SQL块过程语句执行器ORACLE服务器PL/SQL引擎过程语句SQL语句77PL/SQLPL/SQL的体系结构的体系结构22--22•PL/SQL引擎是主要组件,它驻留在Oracle服务器中•PL/SQL引擎处理PL/SQL块并将其分离为SQL语句及过程语句将过程语句发送到过程语句执行器以进行处理将SQL语句发送到SQL语句执行器以进行处理88PL/SQLPL/SQL块块•它包括一组语句•PL/SQL程序中的基本单元•将相关的声明和语句进行逻辑分组•声明对于块是局部的–在块完成之后,将超出范围99PL/SQLPL/SQL的结构的结构•PL/SQL的各个组成部分–声明部分–可执行部分–异常处理部分•PL/SQL块的结构DECLAREdeclarationsBEGINexecutablestatementsEXCEPTIONhandlersEND;其中,declarations是声明,executablestatements是可执行语句,handlers是处理程序。1010变量变量–数据的临时存储–在声明部分中声明–可以在SQL语句和过程语句中使用–在可执行部分中赋予新值•使用变量的优点–可重用性–易于维护1111数据类型数据类型88--11•内置数据类型–标量–复合–引用–LOB1212数据类型数据类型88--22•标量–容纳单个值–没有内部组成•分为四个类别:–NUMBER–CHARACTER–DATE–BOOLEAN1313数据类型数据类型88--33•Number类型–用于存储和操纵数字数据•Number类型是:–BINARY_INTEGER–NUMBER子类型是DEC、DECIMAL、DOUBLEPRECISION、FLOAT、INTEGER、INT、NUMERIC、REAL、SMALLINT–PLS_INTEGER1414数据类型数据类型88--44•Character类型–CHAR–VARCHAR2–RAW–LONG和LONGRAW–ROWID和UROWID•区域字符类型–NCHAR–NVARCHAR21515数据类型数据类型88--55•Datetime和Interval类型–DATE–TIMESTAMP–TIMESTAMPWITHTIMEZONE–TIMESTAMPWITHLOCALTIMEZONE–INTERVALYEARTOMONTH–INTERVALDAYTOSECOND1616数据类型数据类型88--66•BOOLEAN类型–用于存储逻辑值(TRUE、FALSE和NULL)–不接受任何参数–不能向数据库中插入BOOLEAN数据–不能将列值提取戒选择到BOOLEAN变量中–叧允许对BOOLEAN变量执行逻辑操作1717数据类型数据类型88--77•组合类型–RECORD–VARRAY–NESTEDTABLE•LOB类型–BLOB–CLOB–NCLOB–BFILE•引用类型–REFCURSOR–REF操作符1818数据类型数据类型88--88•属性–引用数据库中的数据类型和对象–PL/SQL变量和常量可以具有属性•属性的类型–%type–引用数据库列–%rowtype–代表表中的行1919逻辑比较逻辑比较44--11•PL/SQL支持SQL和PL/SQL中变量和常量的比较(称为“布尔表达式”)•布尔表达式的类型有:–数值型–字符型–日期型2020逻辑比较逻辑比较44--22•数值型布尔表达式–比较数值•下表说明这一点:2121逻辑比较逻辑比较44--33•字符型布尔表达式–比较用引号括起来的序列戒单个字符•下表说明这一点:运算符含义示例=等于name=‘MARK’!=不等于product!=‘computer’按字母顺序排在其前name1name2按字母顺序排在其后name1name2=按字母顺序排在其前或等于name2=name3=按字母顺序排在其后或等于name3=name42222逻辑比较逻辑比较44--44•日期型布尔表达式–比较两个日期•下表说明这一点:运算符含义示例=等于Odate=‘12-Jan-74’!=不等于Odate!=’14–Feb-88’早于Odate’19–Jun-88’晚于Odate’30–jun-77’=早于或等于next_day(odate,6)=‘1-Jan-97’=晚于或等于odate=‘25-DEC-67’2323控制结构控制结构22--11•控制流语句–条件控制–迭代控制–顺序控制•条件控制–基于条件执行语句–类型:ifthen、ifthenelse、ifthenelsif和CASE语句2424控制结构控制结构22--22•迭代控制–简单循环–WHILE循环–FOR循环•顺序控制–GOTO语句–NULL语句2525错误处理错误处理22--11•PL/SQL中的错误条件称为异常•有两种类型的异常:–预定义的–用户定义的•当在PL/SQL程序中出现错误时,将引发异常•在出现错误时,正常执行将停止,控制权转移到异常处理部分2626错误处理错误处理22--22•预定义的异常–PL/SQL程序违反Oracle规则时,将隐式引发它•用户定义的异常–由raise语句显式引发–叧能在PL/SQL块的声明部分中声明2727总结总结33--11•PL/SQL代表procedurallanguage/SQL(procedurallanguage:过程语言)•PL/SQL是一种块结构的语言•将SQL的数据操纵功能与过程语言的数据处理功能结合在一起•允许我们使用所有SQLDML、TCL、SQL函数和运算符•PL/SQL引擎执行PL/SQL块•PL/SQL支持所有SQL数据类型和ANSI标准类型2828总结总结33--22•PL/SQL块的三个组成部分是:声明部分、可执行部分和异常处理部分•变量和常量是在声明部分中声明的•LOB类型用于存储大型对象•属性用于引用数据库中的数据类型和对象•支持对变量和常量进行比较•布尔表达式的三种类型是-数值型、字符型和日期型2929总结总结33--33•控制结构的三种类型是-条件控制、迭代控制、顺序控制•IF语句的三种形式是-IFTHEN、IFTHENELSE、IFTHENELSIF•LOOP可用于多次执行语句•GOTO语句用于无条件地转移到一个标签位置•PL/SQL中的错误条件称为异常

1 / 29
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功