oracle 重新命名

chenoracle發表於2014-10-27

SQL> select * from t1;


        ID
----------
         1
         2

一 :列重新命名
SQL> alter table t1 rename column id to qq;


Table altered.


SQL> select * from t1;


        QQ
----------
         1
         2

二:表重新命名
SQL> alter table t1 rename to t2;


Table altered.


SQL> select * from t1;
select * from t1
              *
ERROR at line 1:
ORA-00942: table or view does not exist


SQL> select * from t2;


        QQ
----------
         1
         2

三 表空間重新命名
SQL> alter tablespace chen rename to chen00;


Tablespace altered.


SQL> select table_name,tablespace_name from user_tables where table_name='T2';


TABLE_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
T2                             CHEN00

四 資料檔案重新命名

Oracle 重新命名資料檔案的兩種方法:ALTER TABLESPACE RENAME DATAFILE和ALTER DATABASE RENAME FILE
  
語法:
   ALTER DATABASE RENAME FILE 'old_name' to 'new_name'
   ALTER TABLESPACE tablespace_name RENAME DATAFILE 'old_name'  TO 'new_name'


透過這兩種方法重新命名資料檔案必須保證: 
    1 目標檔案存在(The operating system files continue to exist)
    2 資料庫在open狀態下重新命名資料檔案必須保證要重新命名的資料檔案所在的表空間處於offline的狀態
      由於在open狀態下system和sysaux表空間不能夠被offline,所以在open狀態只能重新命名除去system和sysaux之外的資料檔案。
    ALTER DATABASE RENAME FILE 不僅僅可以重新命名資料檔案,同樣可以重新命名tempfiles, or redo log file。

SQL> select name from v$dbfile;

NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/users01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/example01.dbf
/home/oracle/chen01.dbf


6 rows selected.


SQL> alter tablespace chen00 offline;


Tablespace altered.


[oracle@chen ~]$ mv chen01.dbf /u01/app/oracle/oradata/orcl/chen0001.dbf


SQL> alter tablespace chen00  rename datafile '/home/oracle/chen01.dbf' to '/u01/app/oracle/oradata/orcl/chen0001.dbf';


Tablespace altered.


SQL> alter tablespace chen00 online;


Tablespace altered.


SQL> select name from v$dbfile;


NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/users01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/example01.dbf
/u01/app/oracle/oradata/orcl/chen0001.dbf


6 rows selected.
歡迎關注我的微信公眾號"IT小Chen",共同學習,共同成長!!!

oracle 重新命名

oracle 重新命名



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

相關文章