ORA-01658 無法為表空間TTS_EX2中的段建立 INITIAL 區

therorawt發表於2008-06-20

在今天的練習中遇到這個問題,可能有2個原因:
1. 使用者預設表空間已滿,並且該表空間不支援自動擴充套件;
2. 使用者預設表空間使用有問題;

現把操作步驟帖出來:
sqlplus /nolog
SQL> conn tts_user/tts_user
已連線。

SQL> select * from scott.emp where rownum < 2;
在列 DEPTNO 前截斷 (按要求)


EMPNO ENAME JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- ---------- ---------- ----------
7369 SMITH CLERK 7902 17-12月-80 800

[@more@]

SQL> create table emp as select * from scott.emp;
create table emp as select * from scott.emp
*
ERROR 位於第 1 行:
ORA-01658: 無法為表空間TTS_EX2中的段建立 INITIAL 區

SQL> conn / as sysdba

SQL> select username,default_tablespace from dba_users where username = 'TTS_USER'
2 /

USERNAME DEFAULT_TABLESPACE
------------------------------ ------------------------------
TTS_USER TTS_EX2

--查系統表空間情況
SELECT a.tablespace_name "表空間名",total 表空間大小,free 表空間剩餘大小,
(total-free) 表空間使用大小,
ROUND((total-free)/total,4)*100 "使用率 %"
FROM (SELECT tablespace_name,SUM(bytes) free FROM DBA_FREE_SPACE
GROUP BY tablespace_name ) a,
(SELECT tablespace_name,SUM(bytes) total FROM DBA_DATA_FILES
GROUP BY tablespace_name) b
WHERE a.tablespace_name=b.tablespace_name and a.tablespace_name = 'TTS_EX2'
/
未選定行

!原來tts_ex2被自己幹掉了
修改使用者預設表空間
SQL> conn tts_user/tts_user
SQL> alter user tts_user default tablespace tts_ex1
2 /

使用者已更改。

SQL> create table emp as select * from scott.emp;

表已建立。

問題得到解決
--the end

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9896745/viewspace-1005927/,如需轉載,請註明出處,否則將追究法律責任。

相關文章