易截截图软件、单文件、免安装、纯绿色、仅160KB

ORACLE中的触发器和游标是在内存中吗?

作者: 三十而立时间:2009年11月08日 12:15:21请尊重原创作品。转载请保持文章完整性,并以超链接形式注明原始作者“inthirties(三十而立)”和出处”http://blog.csdn.net/inthirties/archive/2009/11/08/4786769.aspx”,深入讨论可以联系inthirties@gmail.com。在csdn上看到一个网友问的一个问题 http://topic.csdn.net/u/20091102/20/35713B33-EACB-4A74-8735-251B9AAD156A.html ORACLE中触发器和游标执行是在内存中吗,  是不是挺耗资源,应尽量少用? 呵呵呵,这样的问题一下就把人问懵了,一时也不知道从哪里开始回答,问题倒不是很复杂,只不过笔者的问题把不同的概念杂和在一起,所以一时也不知道从哪里开始回答了。 我们来看看部分答案 实例是在内存中运行的,两者也是在内存中执行 
注意效率就好,如果需要,还是要用触发器和游标的 
游标打开并使用完后记得close 触发器和游标是两个概念。 

触发器是数据库里的一类对象,和function以及procedure一样,是一个PLSQL代码端,编译以后存在实例中,而游标是运行过程中的一个结果集的指针,trigger可以看做是内存中的静态地址,而cursor是内存中的动态部分, 这两个在这方面没有可必行。 

游标类似于数据集合的指针,性能比单个的循环query要优,但是会占用资源,所以要合理的使用。trigger是内存中的静态部分,是一个可执行的代码段,所以性能由你的实现决定。  结论先别下,我们来看看这里涉及到的理论点。 什么是触发器  什么是游标 触发器即为trigger, 是Oracle里的一种对象, 和function,sp, package,匿名的plsql段等一样,是一段PLSQL语法写的程序代码段,Oracle会编译成可执行代码,放到shared pool里,以备执行。属于内存部分里的静态部分,或者share pool不够被清空,或者改变重新编译而移出内存。 游标叻, 游标这里有两种不同的层次上的认识,一种是窄义上的,即PLSQL里都一种类型Cursor,经常在plsql里作为select批量的结果集后的存储的对象,我们可以把他看做是一个数据集合的指针,在PLSQL里通过cursor游标的操作,遍历整个批量返回的结果集,从而完成我们PLSQL里访问数据的目的, 这里可以看到,这块是动态的,不同的调用可能有不同的cursor,随之代码运行的执行完毕,这个cursor也随之而消亡,很显然这部分和具体的调用进程有关,是存在UGA里的。 游标还有一个广义上的含义,在以前解答一个有关硬解


相关文档:

oracle 存储过程的基本语法

oracle 存储过程的基本语法 及注意事项
oracle 存储过程的基本语法
1.基本结构
CREATE OR REPLACE PROCEDURE 存储过程名字
(
    参数1 IN NUMBER,
    参数2 IN NUMBER
) IS
变量1 INTEGER :=0;
变量2 DATE;
BEGIN
END 存储过程名字
2.SELECT INTO STATEMENT
  将selec ......

ORACLE MODEL子句学习笔记

ORACLE 10G中新增的MODEL子句可以用来进行行间计算。MODEL子句允许像访问数组中元素那样访问记录中的某个列。这就提供了诸如电子表格计算之类的计算能力。
 
1、MODEL子句示例
下面这个查询获取2003年内由员工#21完成的产品类型为#1和#2的销量,并根据2003年的销售数据预测出2004年1月、2月、3月的销量。
 
......

Oracle 学习:PL/SQL循序渐进全面学习教程

 课程四 组函数
  
  本课重点:
  1、了解可用的组函数
  2、说明每个组函数的使用方法
  3、使用GROUP BY
  4、通过HAVING来限制返回组
  注意:以下实例中标点均为英文半角
  一、概念:
  组函数是指按每组返回结果的函数。
  组函数可以出现在SELECT和HAVING 字段中。
  GROUP ......

Oracle 学习:PL/SQL循序渐进全面学习教程

  课程五 子查询
  
  本课重点:
  1、在条件未知的情况下采用嵌套子查询
  2、用子查询做数据处理
  3、子查询排序
  
  注意:以下实例中标点均为英文半角
  
  一、概述:
  子查询是一种SELECT句式中的高级特性,就是一个SELECT语句作为另一个语句的一个段。我们可以利用子查询来 ......

Oracle与SQL Server数据互用性(3)

 作者 Haidong Ji  翻译 GoodKid
在我的关于Oracle和SQL Server 互用性的系列文章 part 1 和 part 2 当中,我讨论了Oracle和SQL Server 的一些不同点的话题以及Oracle驱动的可选性。在本主题中,我将讨论一个来自Oracle 10g的新工具,Oracle即时客户端。
对于Oracle 10g以前的版本,如果想建立和Oracle的连接, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号