oracle中的游标处理机制是什么? 在baidu上查了一下,就是没发现介绍oracle游标处理机制的文章(深入一点的,呵呵)在游标处理中,究竟是在什么时候从数据库读取数据,open时还是fetch时?还有,读取时是一次性查询到所有数据还是只取一条数据?谁有这方面的文章或者资料,希望不吝赐教^_^ [email protected]谢谢专家赐教! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 文章没有,我自己用的感觉是:游标是个指针,所以是在select的结果然后给个指针变量。所以open时已从从数据库读取数据select,fetch读取一条数据进来,所以不是一次性读入,比如成千上万条数据的指针,全部读入那效率不是很低吗?应该和高级语言一样,只是一个数据的入口,并没有把所以数据读入,当fetch到那条才读进来。这是我自己对游标的看法。--------------如果有错的地方欢迎大家指出来。-------------------------下面这篇希望能给楼主些帮助。http://www.phpcat.net/oracle/2878.htm 谢谢啊 Eric_1999(╙@^@╜) open是打开,fetch才是具体操作,一次一条。我认为open得时候已经存了所有的数据 open是打开游标,fetch是一次取一条记录,还可以用for loop 好像是OPEN的时候把所有数据取出来,FETCH只是一条一条的赋值,我跟踪过,OPEN的时候要等一会儿,而FETCH不需要,请指正。 我个人的认为是:oracle在open时将数据读到缓存中,以后fetch时就从缓存中读取数据,但如果数据量大的时候,不可能把所有数据都取到。 这样会有一个问题,如果多个事务同时打开这个游标,并且对游标中的数据进行了修改更新操作可能引起数据的不一致,我记得Sybase中有一种游标,如果其他事务对数据修改的话,可以反映到游标中来,估计它的实现应该是只取数据行的ID号,而后fetch时才从数据库中读取不知道理解的怎么样? 我只知道,在fetch的时候才取数据。顶 错了,实践出真知,实践一下就知道了,Open之后就已经缓存了,而且与其它会话无关,具体是怎么缓存的,怎么优化的,怎么控制数据流量的,就深层次得多了,可以作进一步研究。结婚。Open之后获取全部数据。 如果open之后要获取上万条数据,oracle也会都读到缓存中吗》我决得还是有些蹊跷 windows xp下卸载oracle11g的问题 错误处理 字符串拆分 Sql server语句转Oracle语句(主要是日期函数的转换) 3个表联合查询,怎么写SQL ? 关于merge into的用法 系统被格,如何恢复数据库,在线等,急!!!(分不够再加) 高分求教存储过程执行问题? 请问如何在程序中得到一个表的所有字段? 怎样判断着写这个sql ★请教:系统灵活带来的问题:存储过程中动态获得某表某字段的值??? sql server的支持的语句在oracle中不支持.怎么写类似的语句?
--------------如果有错的地方欢迎大家指出来。-------------------------
下面这篇希望能给楼主些帮助。
http://www.phpcat.net/oracle/2878.htm
》
我决得还是有些蹊跷