eygle.com   eygle.com
eygle.com  
 
eygle.com - 留言簿 - 回复留言 - Powered by eYgLe.Com
返回留言簿
回 复 留 言
留言ID:
留言原文:
To: Eygle
  盖老师,你好!

我在学习Oracle Concept资料的第8章《内存结构》时有一段话不是很明白,原文如下(第183页):

A private SQL area continues to exist until the corresponding cursor is closed or the statement handle is freed. Although Oracle frees the runtime area after the statement completes, the persistent area remains waiting. Application developers close all open cursors that will not be used again to free the persistent area and to minimize the amount of memory required for users of the application.

我对上面这段话有几点不明:

1. curosr,run-time are,persistent area 的关系,是不是每执行一个SQL语句都会在PGA中首先run-time area,然后再是persistent area ?

2. 其次就是cursor的准确概念,如果是run-tiime area和persistent area 可以理解为实际的内存区域,那么cursor是不是一个逻辑上的概念,类似于内存指针?

3.run-time area和persistent area 存储的数据到底是什么?concept手册中对此的解析只提到persistent area包含了binding信息,但没有提到run-time的数据

4.文中提到persistent area 不会被自动关闭,必须显式关闭。为什么要这样?oracle这样做不是会留下存储空间隐患吗?除此之外会不会我们不关闭curor而导致记录被“锁”住的危险?

谢谢!望指点!
From: pengpenglin
2009.06.30 08:31
管理密码: 请输入管理密码, 否则无法回复.
斑竹昵称:
信息图标: ( 随机 )


BB 代码:
内容:

如果想删除回复, 请点击最下面的删除回复按钮.
删 除 回 复
管理密码: 请输入管理员密码, 只有版主才能删除回复.
Copyright © 2003~2012 eygle.com All Rights Reserved.
Powered by: www.eygle.com