程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> ORA-30009:CONNECTBY操作內存不足

ORA-30009:CONNECTBY操作內存不足

編輯:Oracle教程

ORA-30009:CONNECTBY操作內存不足


今天在11g的環境上制造數據碰到ORA-30009: CONNECT BY 操作內存不足,10g開始支持XML後,改為xmltable就可以了。

SQL> drop table t_range purge;

SQL> create table t_range (id number not null PRIMARY KEY, test_date date) partition by range (test_date)
(
partition p_2014_7 values less than (to_date('2014-08-01', 'yyyy-mm-dd')),
partition p_2014_8 values less than (to_date('2014-09-01', 'yyyy-mm-dd')),
partition p_2014_9 values less than (to_date('2014-10-01', 'yyyy-mm-dd')),
partition p_2014_10 values less than (to_date('2014-11-01', 'yyyy-mm-dd')),
partition p_2014_11 values less than (to_date('2014-12-01', 'yyyy-mm-dd')),
partition p_2014_12 values less than (to_date('2015-01-01', 'yyyy-mm-dd')),
partition p_max values less than (MAXVALUE)
) nologging;

SQL> insert /*+append */ into t_range select rownum,
to_date(to_char(sysdate - 120, 'J') +
trunc(dbms_random.value(0, 120)),
'J')
from dual
connect by level <= 2000000;
insert /*+append */ into t_range select rownum,
*
第 1 行出現錯誤:
ORA-30009: CONNECT BY 操作內存不足
已用時間: 00: 00: 10.28
SQL> rollback;
回退已完成。

SQL> insert /*+append */ into t_range select rownum,
to_date(to_char(sysdate - 120, 'J') +
trunc(dbms_random.value(0, 120)),
'J')
from xmltable('1 to 2000000');
已創建2000000行。
已用時間: 00: 00: 28.76
SQL> commit;

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved