2009-05-07 4 views

ответ

66
ALTER TABLE mytable RENAME TO othertable 

В Oracle 10g также:

RENAME mytable TO othertable 
+0

В версиях оракула старше 10 г, представления больше не могут быть переименованы. Drop/rereate - единственный возможный способ сделать это сейчас. Проверьте отдельный ответ для примера. – Wouter

10

Чтобы переименовать таблицу в другую схему, попробуйте:

ALTER TABLE owner.mytable RENAME TO othertable; 

Команда переименования (как в "rename mytable to othertable") поддерживает только переименование таблицы в той же схеме.

25

Чтобы переименовать таблицу, которую можно использовать:

RENAME mytable TO othertable; 

или

ALTER TABLE mytable RENAME TO othertable; 

или, если принадлежит другой схеме:

ALTER TABLE owner.mytable RENAME TO othertable; 

Интересно, ALTER VIEW не поддерживает переименование вид. Вы можете, однако:

RENAME myview TO otherview; 

переименовань команда работает для таблиц, представлений, последовательностей и частных синонимов, для только вашей собственной схемы.

Если вид отсутствует в вашей схеме, вы можете перекомпилировать представление с новым именем, а затем отказаться от старого представления.

(протестировано в Oracle 10g)

+1

в 11g, исходный пример, который у вас там, не работал для меня, но второй сделал ... – rogerdpack

+0

Обратите внимание, что RENAME все еще работает в 11g и 12g - обратитесь к http://docs.oracle.com/database/121/SQLRF/statements_9020.htm#SQLRF01608 –

+0

2017 спасибо :) – Ilaria

1

можно rename indexes таким же образом:

alter index owner.index_name rename to new_name; 
+0

Был бы более подходящим в качестве комментария, а не ответ. – Wouter

1

Past 10g текущий ответ больше не работает для переименования взглядов. Единственный метод, который все еще работает, - это сбросить и воссоздать представление. Лучший способ, которым я могу думать, чтобы сделать это было бы:

ВЫБОР ТЕКСТА ИЗ ALL_VIEWS WHERE владелец = «some_schema» и VIEW_NAME = «some_view»;

Добавьте это перед SQL вернулся

Создать или заменить вид some_schema.new_view_name как ...

уронить старый вид

Капля вид some_schema .some_view;

Смежные вопросы