ORA -01652 Невозможно расширить временный сегмент в табличном пространстве

Я создаю таблицу типа

create table tablename
as
select * for table2

Я получаю сообщение об ошибке

ORA-01652 Unable to extend temp segment by in tablespace

Когда я гуглил, я обычно находил ошибку ORA -01652, показывающую какое-то значение, например

Unable to extend temp segment by 32 in tablespace

Я не получаю такого значения. Я выполнил этот запрос

select 
   fs.tablespace_name                          "Tablespace", 
   (df.totalspace - fs.freespace)              "Used MB", 
   fs.freespace                                "Free MB", 
   df.totalspace                               "Total MB", 
   round(100 * (fs.freespace / df.totalspace)) "Pct. Free" 
from 
   (select 
      tablespace_name, 
      round(sum(bytes) / 1048576) TotalSpace 
   from 
      dba_data_files 
   group by 
      tablespace_name 
   ) df, 
   (select 
      tablespace_name, 
      round(sum(bytes) / 1048576) FreeSpace 
   from 
      dba_free_space 
   group by 
      tablespace_name 
   ) fs 
where 
   df.tablespace_name = fs.tablespace_name; 

Взято из:Узнать свободное место в табличном пространстве

и я обнаружил, что табличное пространство, которое я использую в настоящее время, имеет около 32 ГБ свободного места. Я даже пытался создать таблицу типа

create table tablename tablespace tablespacename
as select * from table2 

но я снова получаю ту же ошибку. Может ли кто-нибудь дать мне представление, где проблема и как ее решить. К вашему сведению, оператор select принесет мне 40 000 000 записей.

25
задан Community 23 May 2017 в 12:02
поделиться