当我们建立表时,把表建立错了,或者把表建立到系统表空间了,或者不是自己默认用户下的表空间,我们需要使用
移动表的技术,把表移动到自己用户下的表空间。
注意:在移动了表,索引也需要手动移动。
实验如下;
SQL> create tablespace ts_test datafile 'D:\oracle\oradata\devdb\test01.dbf' size 10m;
表空间已创建。
SQL> create table test(id number,name varchar2(10));
表已创建。
SQL> create index ti_id on test(id);
索引已创建。
SQL> select index_name,status,tablespace_name from user_indexes where index_name='TI_ID';
INDEX_NAME STATUS TABLESPACE_NAME
-------------------- ---------------- --------------------
TI_ID VALID USERS
SQL> select table_name,tablespace_name from user_tables where table_name='TEST';
TABLE_NAME TABLESPACE_NAME
-------------------- --------------------
TEST USERS
SQL> insert into test values(1,'pxboracle');
已创建 1 行。
SQL> commit;
提交完成。
SQL> alter table test move tablespace ts_test;
表已更改。
SQL> select table_name,tablespace_name from user_tables where table_name='TEST';
TABLE_NAME TABLESPACE_NAME
-------------------- --------------------
TEST TS_TEST
SQL> select index_name,status,tablespace_name from user_indexes where index_name='TI_ID';
INDEX_NAME STATUS TABLESPACE_NAME
-------------------- ---------------- --------------------
TI_ID UNUSABLE USERS
SQL> alter index ti_id rebuild tablespace ts_test;
索引已更改。
SQL> select index_name,status,tablespace_name from user_indexes where index_name='TI_ID';
INDEX_NAME STATUS TABLESPACE_NAME
-------------------- ---------------- --------------------
TI_ID VALID TS_TEST
-----------------------------------------------------------------------------------------------------------------------
pxboracle@live.com
2014.5.22 22:40
share you knowledge with the world.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12798004/viewspace-1167952/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/12798004/viewspace-1167952/