
pl\sql
文章平均质量分 89
aqqqqa
这个作者很懒,什么都没留下…
展开
-
PL\SQL用户指南与参考 转载
第一章 PL/SQL一览一、理解PL/SQL的主要特性了解PL/SQL最好的方法就是从简单的实例入手。下面的程序是用于处理一个网球拍订单的。首先声明一个NUMBER类型的变量来存放现有的球拍数量。然后从数据表inventory中把球拍的数量检索出来。如果数量大于零,程序就会更新inventory表,并向purchase_record表插入一条购买记录,如果数量不大于零,程序会向purc...原创 2011-04-18 17:58:16 · 121 阅读 · 0 评论 -
PL\SQL用户指南与参考7.1 转载
第七章 控制PL/SQL错误 一、错误控制一览在PL/SQL中,警告或错误被称为异常。异常可以是内部(运行时系统)定义的或是用户定义的。内部定义的案例包括除零操作和内存溢出等。一些常见的内部异常都有一个预定义的名字,如ZERO_DIVIDE和STORAGE_ERROR等。对于其它的内部异常,我们可以手动为它们命名。 我们可以在PL/SQL块、子程序或包的声明部分自定义异常...原创 2011-04-22 16:54:19 · 135 阅读 · 0 评论 -
PL\SQL用户指南与参考7.2 转载
八、处理PL/SQL异常异常抛出时,PL/SQL块或子程序的正常执行就会停止,控制权转到块或子程序的异常处理部分,语法如下: EXCEPTION WHEN exception_name1 THEN -- handler sequence_of_statements1 WHEN exception_name2 THEN -- an...原创 2011-04-22 16:55:13 · 131 阅读 · 0 评论 -
PL\SQL用户指南与参考8 转载
第八章 PL/SQL子程序 一、什么是子程序子程序就是能够接受参数并被其他程序所调用的命名PL/SQL块。PL/SQL子程序有两种类型,过程和函数。一般地,过程用于执行一个操作,而函数用于计算一个结果值。与未命名或匿名PL/SQL块一样,子程序也有声明部分,执行部分和一个可选的异常处理部分。声明部分包含类型、游标、常量、变量、异常和嵌套子程序的声明。这些内容都是本地的,在...原创 2011-04-22 16:56:21 · 104 阅读 · 0 评论 -
PL\SQL用户指南与参考9.1 转载
第九章 PL/SQL包 一、什么是PL/SQL包包就是一个把各种逻辑相关的类型、常量、变量、异常和子程序组合在一起的模式对象。包通常由两个部分组成:包说明和包体,但有时包体是不需要的。说明(简写为spec)是应用程序接口;它声明了可用的类型、变量、常量、异常、游标和子程序,包体部分完全定义游标和子程序,并对说明中的内容加以实现。 如下例所示,我们可以认为说明部分是一个可选...原创 2011-04-22 16:57:47 · 122 阅读 · 0 评论 -
PL\SQL用户指南与参考9.2 转载
九、系统包一览Oracle和各种Oracle工具都提供了系统包来帮助我们建立基于PL/SQL的应用程序。例如,Oracle提供了许多工具包,下面介绍一下其中比较典型的包。 1、关于DBMS_ALERT包DBMS_ALERT能让数据库触发器在特定的数据库值发生变化时向应用程序发送报警。报警是基于事务的并且是异步的(也就是它们的操作与定时机制无关)。例如,当新的股票和债券上市时公司就可...原创 2011-04-22 16:58:26 · 190 阅读 · 0 评论 -
PL\SQL用户指南与参考10.1 转载
第十章 PL/SQL对象类型 一、抽象的角色抽象是对一个真实世界实体的高级描述或建模。它能排除掉无关的细节内容,使我们的日常生活更有条理。例如,驾驶一辆汽车时,我们是不需要知道它的发动机是如何工作的。由变速排档、方向盘、加速器和刹车组成的接口就能让我们有效地使用它。而其中每一项的详细信息对于日常驾驶来说并不重要。 抽象是编程的核心内容。例如,我们在隐藏一个复杂的算法时只要编写一个过...原创 2011-04-22 16:59:52 · 147 阅读 · 0 评论 -
PL\SQL用户指南与参考10.2 转载
5、对象类型实例:实数有理数能够表现成两个整数相除的形式,一个分子和一个分母。同大多数语言一样,PL/SQL并没有实数类型或是用于实数操作的预定义操作符。现在让我们就用对象类型来弥补这个缺失。首先,编写下面的对象说明: CREATE TYPE rational AS OBJECT( num INTEGER, den INTEGER, ...原创 2011-04-22 17:00:48 · 136 阅读 · 0 评论 -
PL\SQL用户指南与参考11 转载
第十一章 本地动态SQL一、什么是动态SQL大多数PL/SQL都做着一件特殊的结果可预知的工作。例如,一个存储过程可能接受一个雇员的编号和他的提薪金额,然后更新表emp中的信息。在这种情况下,UPDATE的全部文本内容在编译期就完全确定下来,这样的语句不会随着程序的执行而发生变化。所以,称它们为静态SQL语句。 但是,有些程序只能是在运行时建立并处理不同的SQL语句。例如,一般用途...原创 2011-04-22 17:01:53 · 119 阅读 · 0 评论 -
PL\SQL用户指南与参考6.3 转载
八、PL/SQL中的事务处理一览在这里,我们学习一下,如何使用事务处理的基本技术来保证数据库的一致性,这其中包括如何提交或取消对数据库的改动。Oracle管理下的工作或任务被称为会话。当我们运行应用程序或Oracle工具并连接到Oracle时,一个用户会话就会被开启。为了让用户会话可以"同步"工作并能共享计算机资源,Oracle就必须控制并发,所谓并发指的是多个用户同时访问同样的数据资...原创 2011-04-22 16:53:08 · 150 阅读 · 0 评论 -
PL\SQL用户指南与参考6.2 转载
其它的OPEN-FOR语句可以使用不同的查询打开同样的游标变量。在重新打开游标变量之前是不需要关闭它的(但对一个静态游标使用多次OPEN操作时,系统会抛出预定义异常CURSOR_ALREADY_OPEN)。为执行一个不同的查询而重新打开游标变量时,前面的查询结果就会丢失。一般地,我们可以把游标变量传递给过程,然后由过程负责打开它,如下例,打包过程打开游标变量emp_cv: CREA...原创 2011-04-22 16:52:34 · 138 阅读 · 0 评论 -
PL\SQL用户指南与参考2 转载
第二章 PL/SQL基础 一、字符集在PL/SQL程序中,允许出现的字符集包括: 大小写字母(A-Z和a-z) 数字(0-9) 符号( ) + - * / < > = ! ~ ^ ; : . ’ @ % , " # $ & _ | { } ? [ ] 制表符、空格和回车符 PL/SQL对大小写不敏感,所以,除了在字...原创 2011-04-19 09:25:31 · 171 阅读 · 0 评论 -
PL\SQL用户指南与参考3 转载
第三章 PL/SQL数据类型一、预定义数据类型Oracle的数据类型可以分为四类,分别是标量类型,复合类型,引用类型和LOB类型。标量类型没有内部组件;而复合类型包含了能够被单独操作的内部组件;引用类型类似于3G语言中的指针,能够引用一个值;LOB类型的值就是一个lob定位器,能够指示出大对象(如图像)的存储位置。下图是在PL/SQL中可以使用的预定义类型,其中标量类型又分为四...原创 2011-04-20 17:41:14 · 132 阅读 · 0 评论 -
PL\SQL用户指南与参考4 转载
第四章 PL/SQL的控制结构一、PL/SQL控制结构一览根据结构定理(structure theorem),任何计算机程序都可以用下图中的基本控制结构来表示。它们可以任意组合来解决问题。 选择结构是用于测试条件的,根据条件的真假,执行一系列语句。一个条件语句可以是任何能够返回布尔值(TRUE或FALSE)的变量或表达式。循环结构能在条件满足的情况下反复执行。序列结构只是简单的按照...原创 2011-04-21 11:26:27 · 112 阅读 · 0 评论 -
PL\SQL用户指南与参考5.1.1 转载
第五章 PL/SQL集合与记录一、什么是集合集合就是相同类型的元素的有序合集。它一个通用的概念,其中包含了列表、数组和其他相似的数据类型。每一个元素都有唯一的下标来标识当前元素在集合中的位置。PL/SQL提供了以下几种集合类型:索引表,也称为关联数组,可以让我们使用数字或字符串作下标来查找元素。(这有点和其他语言中的哈希表相类似。) 嵌套表可以容纳任意个数的元素,使用有序数字...原创 2011-04-22 09:50:15 · 94 阅读 · 0 评论 -
PL\SQL用户指南与参考5.1.2 转载
六、集合的赋值集合可以用INSERT、UPDATE、FETCH或SELECT语句来赋值,也可以用赋值语句或调用子程序来赋值。我们可以使用下面的语法来为某个指定的集合元素进行赋值: collection_name(subscript) := expression; 其中expression的值和被指定的元素类型必须一致。下面我们来看三个例子。 例一:数据的兼容性...原创 2011-04-22 09:50:56 · 120 阅读 · 0 评论 -
PL\SQL用户指南与参考5.2.1 转载
六、集合的赋值集合可以用INSERT、UPDATE、FETCH或SELECT语句来赋值,也可以用赋值语句或调用子程序来赋值。我们可以使用下面的语法来为某个指定的集合元素进行赋值: collection_name(subscript) := expression; 其中expression的值和被指定的元素类型必须一致。下面我们来看三个例子。 例一:数据的兼容性...原创 2011-04-22 09:52:29 · 104 阅读 · 0 评论 -
PL\SQL用户指南与参考5.2.2 转载
十五、什么是记录记录就是相关的数据项集中存储在一个单元中,每项都有它自己的名字和数据类型。假定我们有关于雇员的各种数据信息,如名字、薪水和雇佣日期,这些项在逻辑上是相关联的,但类型不相似。记录可以把它所拥有的每一项当作一个逻辑单元,这样就便于组织和表现信息。 %ROWTYPE属性能让我们声明代表数据表中一行记录的类型。但是我们不能利用它指定或声明自己的数据类型。不过没关系,RECORD...原创 2011-04-22 09:53:06 · 196 阅读 · 0 评论 -
PL\SQL用户指南与参考6.1 转载
第六章 PL/SQL与Oracle间交互一、PL/SQL支持的SQL一览PL/SQL扩展了SQL,变得更加强大和易用。我们可以用PL/SQL灵活安全地操作Oracle数据,因为它支持所有的SQL数据操作语句(除了EXPLAIN PLAN),事务控制语句,函数,伪列和操作符。PL/SQL还支持动态SQL,能让我们动态地执行SQL数据定义,数据控制和会话控制语句。除此之外, PL/...原创 2011-04-22 16:49:23 · 102 阅读 · 0 评论 -
PL\SQL用户指南与参考12结束篇 转载
第十二章 PL/SQL应用程序性能调优一、PL/SQL性能问题的原由当基于PL/SQL的应用程序执行效率低下时,通常是由于糟糕的SQL语句、编程方法,对PL/SQL基础掌握不好或是滥用共享内存造成的。 PL/SQL中糟糕的SQL语句 PL/SQL编程看起来相对比较简单,因为它们的复杂内容都隐藏在SQL语句中,SQL语句常常分担大量的工作。这就是为什么糟糕的SQL语...原创 2011-04-22 17:02:59 · 209 阅读 · 0 评论