PL/SQL程序设计

PL/SQL程序设计
1
目 录
第一章 PL/SQL 程序设计简介....................................................................................4
§1.2 SQL与PL/SQL......................................................................................................................4
§1.2.1 什么是PL/SQL?...............................................................................................................4
§1.2.1 PL/SQL的好处................................................................................................................4
§1.2.2 PL/SQL 可用的SQL语句.................................................................................................5
§1.3 运行PL/SQL程序..................................................................................................................5
第二章 PL/SQL块结构和组成元素.................................................................................6
§2.1 PL/SQL块..............................................................................................................................6
§2.2 PL/SQL结构...........................................................................................................................6
§2.3 标识符...................................................................................................................................6
§2.4 PL/SQL 变量类型................................................................................................................7
§2.4.1 变量类型............................................................................................................................7
§2.4.2 复合类型..........................................................................................................................9
§2.4.3 使用%ROWTYPE.............................................................................................................11
§2.4.4 LOB类型*........................................................................................................................11
§2.4.5 Bind 变量........................................................................................................................11
§2.4.6 INDEX BY TABLES.......................................................................................................12
§2.4.7 数据类型的转换*............................................................................................................13
§2.5 运算符和表达式(数据定义)................................................................................................13
§2.5.1 关系运算符......................................................................................................................13
§2.5.2 一般运算符......................................................................................................................13
§2.5.3 逻辑运算符......................................................................................................................14
§2.6 变量赋值..............................................................................................................................14
§2.6.1 字符及数字运算特点......................................................................................................14
§2.6.2 BOOLEAN 赋值.............................................................................................................14
§2.6.3 数据库赋值......................................................................................................................14
§2.6.4 可转换的类型赋值..........................................................................................................15
§2.7 变量作用范围及可见性.......................................................................................................15
§2.8 注释.....................................................................................................................................16
§2.9 简单例子..............................................................................................................................17
§2.9.1 简单数据插入例子........................................................................................................17
§2.9.2 简单数据删除例子........................................................................................................17
第三章 PL/SQL流程控制语句........................................................................................18
§3.1 条件语句..............................................................................................................................18
§3.2 CASE 表达式.....................................................................................................................19
§3.3 循环.....................................................................................................................................19
§3.3 标号和GOTO........................................................................................................................21
§3.4 NULL 语句............................................................................................................................21
第四章 游标的使用........................................................................................................23 - 1 -
2
§4.1 游标概念.................................................................................................................................23
§4.1.1 处理显式游标....................................................................................................................23
§4.1.2 处理隐式游标....................................................................................................................26
§4.1.3 游标修改和删除操作......................................................................................................27
第五章 异常错误处理.................................................................................................29
§5.1 异常处理概念..........................................................................................................................29
§5.1.1 预定义的异常处理............................................................................................................29
§5.1.2 非预定义的异常处理........................................................................................................30
§5.1.3 用户自定义的异常处理....................................................................................................31
§5.1.4 用户定义的异常处理......................................................................................................32
§5.2 异常错误传播..........................................................................................................................33
§5.2.1 在执行部分引发异常错误................................................................................................33
§5.2.2 在声明部分引发异常错误................................................................................................34
§5.3 异常错误处理编程..................................................................................................................34
§5.4 在 PL/SQL 中使用 SQLCODE, SQLERRM....................................................................35
第六章 存储函数和过程.................................................................................................36
§6.1 引言.......................................................................................................................................36
§6.2 创建函数................................................................................................................................36
§6.3 存储过程................................................................................................................................39
§6.3.1 创建过程..........................................................................................................................39
§6.3.2 调用存储过程..................................................................................................................40
§6.3.3 开发存储过程步骤..........................................................................................................42
§6.3.4 与过程相关数据字典......................................................................................................43
第七章 包的创建和应用.................................................................................................44
§7.1 引言.......................................................................................................................................44
§7.2 包的定义................................................................................................................................44
§7.3 包的开发步骤........................................................................................................................45
§7.4 包定义的说明........................................................................................................................45
§7.5 子程序重载............................................................................................................................48
§7.6 删除过程、函数和包............................................................................................................50
§7.7 包的管理................................................................................................................................50
第八章 触发器...............................................................................................................51
§8.1 触发器类型............................................................................................................................51
§8.1.1 DML触发器........................................................................................................................51
§8.1.2 替代触发器........................................................................................................................51
§8.1.3 系统触发器........................................................................................................................51
§8.2 创建触发器............................................................................................................................51
§8.2.1 触发器触发次序................................................................................................................53
§8.2.2 创建DML触发器...............................................................................................................53
§8.2.3 创建替代(Instead_of)触发器............................................................................................54
§8.2.3 创建系统事件触发器........................................................................................................54 - 2 -
3
§8.2.4 系统触发器事件属性........................................................................................................55
§8.2.5 使用触发器谓词................................................................................................................56
§8.2.6 重新编译触发器................................................................................................................56
§8.3 删除和使能触发器................................................................................................................56
§8.4 触发器和数据字典................................................................................................................57
§8.5 数据库触发器的应用举例..................................................................................................57
- 3 -
4
第一章 PL/SQL 程序设计简介
PL /SQL是一种高级数据库程序设计语言,该语言专门用于在各种环境下对ORACLE数据库进行访问。由于该语言集成于数据库服务器中,所以PL/SQL代码可以对数据进行快速高效的处理。除此之外,可以在ORACLE数据库的某些客户端工具中,使用PL/SQL语言也是该语言的一个特点。本章的主要内容是讨论引入PL/SQL语言的必要性和该语言的主要特点,以及了解PL/SQL语言的重要性和数据库版本问题。还要介绍一些贯穿全书的更详细的高级概念,并在本章的最后就我们在本书案例中使用的数据库表的若干约定做一说明。
本章主要重点:

时间: 2024-11-01 22:43:56

PL/SQL程序设计的相关文章

《Oracle PL/SQL程序设计(第5版)》一一1.4 关于PL/SQL的版本

1.4 关于PL/SQL的版本 Oracle PL/SQL程序设计(第5版) 每个版本的Oracle数据库都有其对应的PL/SQL版本.只要我们使用的是最新版的PL/SQL,就会有更多的功能供我们使用.作为PL/SQL程序员的最大挑战就是"紧跟".我们不需要不断地自学每个版本中的新特性─学会使用它们,尤其在我们自己的应用程序中该如何使用,确定有些新技术尤其有用,我们应该利用这些新技术修改已有的应用程序. 表1-1总结了数据库中每一版(过去的和当前的)PL/SQL的主要成员(注意在早期的

《Oracle PL/SQL程序设计(第5版)》一一2.6 在其他语言中调用PL/SQL

2.6 在其他语言中调用PL/SQL Oracle PL/SQL程序设计(第5版) 总有一天,你会在从C.Java.Perl.PHP或其他语言中调用PL/SQL.虽然这是一个很合理的需求,如果你曾经做过跨语言的开发工作,你一定熟知要把各种语言专有的数据类型糅合在一起─尤其是那些复合数据类型,比如数组.记录或者对象类型─的复杂性,更不用说不同的参数语法或者厂商对所谓"标准"应用编程接口(API)的扩展,比如微软的ODBC(Open Database Connectivity). 我会用几

《Oracle PL/SQL程序设计(第5版)》一一1.5 PL/SQL开发人员的资源

1.5 PL/SQL开发人员的资源 Oracle PL/SQL程序设计(第5版) O'Reilly在1995年出版了本书的第一版.当时,Oracle PL/SQL编程这本书确实造成一个小轰动.它是第一本关于PL/SQL的独立著作(也就是,不是来自于Oracle公司的).从那时开始,PL/SQL程序员的资源─图书.开发环境.工具以及网站─开始蓬勃发展.(当然,迄今为止这本书仍然是这些资源中最重要和最有价值的!) 下面这一节简要地介绍了这许多资源.要充分利用这些资源,许多资源都可以免费获得或者非常低

《Oracle PL/SQL程序设计(第5版)》一一1.6 一些建议

1.6 一些建议 Oracle PL/SQL程序设计(第5版) 自从本书1995年第一版出版以来,我有机会培训.帮助.与上千名PL/SQL开发人员合作过.在这个过程中,我从学生和读者中学到的许多,也深刻的理解了在PL/SQL世界中我们是如何工作的.我要给你一些如何让这个强大的编程语言更有效的工作的建议,你可不要不耐烦. 1.6.1 不要太着急 我们的工作时间总是很紧迫,记者解决一个个的问题.我们不能浪费时间,有太多的代码要写.因此马上开始吧--对吗? 错误.如果太快地深入到代码构建中,盲目地把用

《Oracle PL/SQL程序设计(第5版)》一一2.2 创建和编辑源代码

2.2 创建和编辑源代码 Oracle PL/SQL程序设计(第5版) 当今的程序员有太多的代码编辑器可以选择,从最简单的纯文本编辑器到最花哨的开发环境让人眼花缭乱.不同的程序员会有不同的选择,本书的一名作者Steven Feuerstein,非常痴迷于Toad IDE.他也是一个非常典型的IDE用户--最多熟悉界面上10%的功能和按钮,并严重依赖于这些功能.相反Bill Pribyl说他自己是一个"非常古怪的人,因为我只喜欢使用一个非常朴素的文本编辑器来写PL/SQL程序.我的一个要求就是,它

[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)

原文:[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下) [推荐]ORACLE PL/SQL编程详解之一: PL/SQL 程序设计简介(千里之行,始于足下) --通过知识共享树立个人品牌. 继上六篇:        [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)        [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)        [推荐]ORA

《Oracle PL/SQL程序设计(第5版)》导读

前言 Oracle PL/SQL程序设计(第5版) 全世界有成百上千万的用户和数据库管理员正在使用Oracle公司提供的软件,这些软件可以构建复杂的系统来管理海量的数据.许多Oracle软件的核心是PL/SQL--这是一款编程语言,对Oracle版本的SQL(结构化查询语言)提供了面向过程的扩展,该语言在Oracle开发工具箱(最有名的包括Forms Developer和Reports Developer)中作为编程语言使用. PL/SQL的一个显著特征是几乎可用于Oracle公司发行的所有新产

《Oracle PL/SQL程序设计(第5版)》一一1.1 什么是PL/SQL?

1.1 什么是PL/SQL? Oracle PL/SQL程序设计(第5版) Oraclel 的PL/SQL语言有这样一些典型的特点: ** 它是一种高度结构化.易读.易理解的语言** 如果你是一个开发新手,那么PL/SQL是一个非常好的起点.你会发现PL/SQL是一门非常容易掌握的语言,它有丰富的关键字.语法结构,可以让编写出能够清晰的表达你的意图的代码.如果你在其他开发语言已经是一个资深开发者,你也会发现PL/SQL这门新语言非常容易适应的. ** 它是一种标准的.可移植的Oracle开发语言

《Oracle PL/SQL程序设计(第5版)》一一第1章 PL/SQL概述

第1章 PL/SQL概述 Oracle PL/SQL程序设计(第5版) 所谓PL/SQL,即"Procedural Language extensions to the Structured Query Language"的首字母缩写.在关系数据库的世界中,SQL语言是无处不在,从数据查询到数据更新.Oracle 公司发明PL/SQL为了克服SQL语言自身的一些局限,并为那些要在Oracle数据库中运行的核心业务,提供一种更完整的变成解决方案.这一章将介绍PL/SQL,包括它的起源.它

《Oracle PL/SQL程序设计(第5版)》一一2.5 编辑PL/SQL的环境

2.5 编辑PL/SQL的环境 Oracle PL/SQL程序设计(第5版)如前所述,你可以选择像SQL*Plus这样最朴素的编辑和执行环境,你也可以使用一个集成开发环境,后者提供丰富的图形界面能够提高生产力.这一部分会罗列一些最流行的IDE工具.我不会推荐任何一款工具,你应该仔细定义你的需求列表并排出优先顺序,然后再看哪一款最能满足你的需求.还有许多其他的PL/SQL IDE工具,但上面罗列的这些足够了.