在oracle對象的重命名始終都是個麻煩的事情,這些對象主要是指表名,索引名,列名,表空間名。[@more@]
在8i的時候提供了對表名和索引名的重命名功能:
SQL> alter table sunwg rename to sunwg01;
表已更改。
SQL> alter index ind_sunwg rename to ind_sunwg01;
索引已更改。
在9i的時候提供對表中的列的重命名功能:
SQL> desc sunwg
名稱 是否為空? 類型
----------------------------------------- -------- --------------
OWNER VARCHAR2(30)
OBJECT_NAME VARCHAR2(128)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_ID NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)
SQL> alter table sunwg
2 rename column owner to owner_1;
表已更改。
SQL> desc sunwg
名稱 是否為空? 類型
----------------------------------------- -------- --------------
OWNER_1 VARCHAR2(30)
OBJECT_NAME VARCHAR2(128)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_ID NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)
在10g的時候提供對表空間的重命名功能:
SQL> create tablespace test datafile 'D:ORACLEproduct10.2.0oradatatest.dbf' size 10m;
表空間已建立。
已用時間: 00: 00: 02.64
SQL> alter tablespace test rename to test01;
表空間已更改。
讓我們忘記以前修改對象名字的麻煩吧!
其實這些重命名操作也就是對資料字典表的簡單更新而已,不知道為什麼oracle提供的這麼晚。
随着版本的更新,oracle變得得越來越友善快捷。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8394333/viewspace-1000692/,如需轉載,請注明出處,否則将追究法律責任。
轉載于:http://blog.itpub.net/8394333/viewspace-1000692/