hi all.
Проделав экспорт дампа (expdp.exe), я изменил несколько объектов схемы. В том числе, некоторую функцию в пакете и несколько таблиц.
Затем сильно пожалел об этом и решил восстановить всё обратно из дампа.
Утилита impdp.exe (10.2.0.1.0) имеет один из аргументов - TABLE_EXISTS_ACTION - при указании которому значения = REPLACE она перепишет метаданные и данные таблиц, индексов и кластеров, а также создаст последовательности (если их "грохнули").
Однако она НЕ изменяет код PL/SQL, записанный в функциях пакетов (т.е. функция осталась в изменённом виде, а не в том, в котором она сидит в дампе).
Кроме того, когда импорт встречает уже существующий объект (индекс, последовательность, кластер - всё, за исключением таблиц), то выдает сообщение типа
ORA-31684: Object type XXXXX:"mmmm"."nnnnn" already exists |
и считает это ошибкой.
ВОПРОС: нет ли у этой утилиты какого-нибудь "волшебного" аргумента типа "ANY_OBJECT_EXISTS_ACTION" с допустимым значением = REPLACE (чтобы импорт переписывал ВСЕ объекты, встретившиеся на его пути и НЕ говорил об ошибках, которые в данной ситуации ошибками не являются) ?