- 关 键 词:
- 存储过程
1.使用FORALL比FOR效率高,因为前者只切换一次上下文,而后者将是在循环次数一样多个上下文间切换。
2.使用BLUK COLLECT一次取出一个数据集合,比用游标条取数据效率高,尤其是在网络不大好的情况下。但BLUK COLLECT需要大量内存。
使用例子:
(1)定义一个TABLE
CREATE OR REPLACE TYPE string_table AS TABLE OF VARCHAR2(100);
(2)在存储过程里面测试
DECLARE
v_table string_table;
BEGIN
SELECT cust_name
BULK COLLECT INTO v_table
FROM cust c
WHERE c.cust_id BETWEEN 64561 AND 64565;
FORALL idx IN 1..v_table.COUNT
INSERT INTO cust_test VALUES(v_table(idx));
COMMIT;
END;
进入讨论组讨论。相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- 甲骨文:从手机功能变化看数据库性能扩展 (27次浏览)
- Windows环境中同时安装Oracle9i 10g和11g (25次浏览)
- 详细讲解Oracle表分区的相关概念及其优点 (16次浏览)
- Oracle 10G 新特性--透明数据加密技术 (15次浏览)
- Oracle数据库exp imp按用户导出导入实例 (12次浏览)
- Oracle中 in 和 not in的巨大区别 (12次浏览)
- Oracle:ERP伸向企业外部 (11次浏览)
- 教你快速掌握一个简单的Oracle定时任务 (9次浏览)
- 教你快速掌握Oracle数据库中的like优化 (9次浏览)
- Oracle ERP 11i 维护经验 (9次浏览)



