执行性能比较看看测试的结果,分别执行五次所耗费的秒数:当 rownum <= 100000 时:fetch bulk collect into 耗时:0.125秒, 0.125秒, 0.125秒, 0.125秒, 0.141秒fetch into 耗时: 1.266秒, 1.250秒, 1.250秒, 1.250秒, 1.250秒当 rownum <= 1000000 时:fetch bulk collect into 耗时:1.157秒, 1.157秒, 1.156秒, 1.156秒, 1.171秒fetch into 耗时: 12.128秒, 12.125秒, 12.125秒, 12.109秒, 12.141秒当 rownum <= 10000 时:fetch bulk collect into 耗时:0.031秒, 0.031秒, 0.016秒, 0.015秒, 0.015秒fetch into 耗时: 0.141秒, 0.140秒, 0.125秒, 0.141秒, 0.125秒当 rownum <= 1000 时:fetch bulk collect into 耗时:0.016秒, 0.015秒, 0.016秒, 0.016秒, 0.015秒fetch into 耗时: 0.016秒, 0.031秒, 0.031秒, 0.032秒, 0.015秒从测试结果来看游标的记录数越大时,用 fetch bulk collect into 的效率很明显示,趋于很小时就差不多了。注意了没有,前面使用 fetch bulk collect into 时前为每一个查询列都定义了一个集合,这样有些繁琐。我们之前也许用过表的 %rowtype 类型,同样的我们也可以定义表的 %rowtype 的集合类型。看下面的例子,同时在这个例子中,我们借助于集合的
first、last 属性来代替使用 count 属性来进行遍历。