ALTER TABLE old_table_name RENAME TO new_table_name; 刚试试了下,不好意思,ORACLE会自动去修改该表索引的表名称,不会使索引失效,索引会自动更新表名
--测试结果 SQL> create index testindex_forcsdn on coursee(SUBJECT);Index createdSQL> select index_name from all_indexes where table_name = 'COURSEEE';INDEX_NAME ------------------------------SQL> select index_name from all_indexes where table_name = 'COURSEE';INDEX_NAME ------------------------------ TESTINDEX TESTINDEX_FORCSDNSQL> rename coursee to course;Table renamedSQL> select index_name from all_indexes where table_name = 'COURSE';INDEX_NAME ------------------------------ TESTINDEX TESTINDEX_FORCSDNSQL>
会的啊,我在PL/SQL DEV和SQL*PLUS里都会啊 SQL> ALTER TABLE bill RENAME TO billS;表已更改。SQL> select index_name from all_indexes where table_name = 'BILLS'; INDEX_NAME ------------------------------ BILL_INDEXSQL> ALTER TABLE bills RENAME TO bill;表已更改。SQL> select index_name from all_indexes where table_name = 'BILL"; ERROR: ORA-01756: 括号内的字符串没有正确结束 SQL> select index_name from all_indexes where table_name = 'BILL';INDEX_NAME ------------------------------ BILL_INDEX
如果单纯用语句修改表名的话,应该会使索引失效,
刚试试了下,不好意思,ORACLE会自动去修改该表索引的表名称,不会使索引失效,索引会自动更新表名
--测试结果
SQL> create index testindex_forcsdn on coursee(SUBJECT);Index createdSQL> select index_name from all_indexes where table_name = 'COURSEEE';INDEX_NAME
------------------------------SQL> select index_name from all_indexes where table_name = 'COURSEE';INDEX_NAME
------------------------------
TESTINDEX
TESTINDEX_FORCSDNSQL> rename coursee to course;Table renamedSQL> select index_name from all_indexes where table_name = 'COURSE';INDEX_NAME
------------------------------
TESTINDEX
TESTINDEX_FORCSDNSQL>
SQL> ALTER TABLE bill RENAME TO billS;表已更改。SQL> select index_name from all_indexes where table_name = 'BILLS';
INDEX_NAME
------------------------------
BILL_INDEXSQL> ALTER TABLE bills RENAME TO bill;表已更改。SQL> select index_name from all_indexes where table_name = 'BILL";
ERROR:
ORA-01756: 括号内的字符串没有正确结束
SQL> select index_name from all_indexes where table_name = 'BILL';INDEX_NAME
------------------------------
BILL_INDEX