.使用FORALL比FOR效率高因为前者只切换一次上下文而后者将是在循环次数一样多个上下文间切换 .使用BLUK COLLECT一次取出一个数据集合比用游标条取数据效率高尤其是在网络不大好的情况下但BLUK COLLECT需要大量内存 使用例子 ()定义一个TABLE CREATE OR REPLACE TYPE string_table AS TABLE OF VARCHAR(); ()在存储过程里面测试 DECLARE v_table string_table; BEGIN SELECT cust_name BULK COLLECT INTO v_table FROM cust c WHERE ccust_id BETWEEN AND ; FORALL idx IN v_tableCOUNT INSERT INTO cust_test VALUES(v_table(idx)); COMMIT; END; |