Ошибка 38824: команда CREATE OR REPLACE не может изменить свойство EDITIONABLE существующего объекта - PullRequest
0 голосов
/ 07 сентября 2018

мы внедряем систему модульного тестирования нашего производственного объекта базы данных, такого как package, process, trigger & co. Для этого у нас есть контейнер, который создает базу данных из https://github.com/oracle/docker-images/tree/master/OracleDatabase. Затем мы выполняем сценарии, которые создают схему, пользователей, предоставляют некоторые привилегии, создают хорошие табличные пространства ... Затем мы используем Data Pump Oracle для расширения и расширения схемы. Эти шаги успешны.

Проблема возникает, когда мы пытаемся выполнить тест наших процедур и пакетов. Они не найдены в схеме из-за ошибки компиляции "ORA-38824: команда CREATE OR REPLACE не может изменить свойство EDITIONABLE существующего объекта".

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

единственное различие между нашей средой и базой данных контейнеров состоит в том, что когда мы создаем процедуру / пакет с нуля, редактируемый параметр в деталях объекта находится в 'N' в контейнере, когда он находится в 'Y' в нашей среде.

Похоже, что редактируемый параметр для объектов должен быть установлен на уровне базы данных. Но вопрос в том, где его можно установить?

Мы пытались «ИЗМЕНИТЬ ПОЛЬЗОВАТЕЛЯ X РАЗРЕШЕННЫМИ ИЗДАНИЯМИ»; безуспешно, поскольку это вызывает «ORA-38813: выпуски, не поддерживаемые для схемы X».

Неужели Impdp & Expdp вызывают проблемы?

Мы попытались использовать 'source_edition' и 'target_edition' для нашего процесса expdp impdp. Мы явно что-то упускаем или делаем что-то не так, но мы не можем найти что.

Я искал в интернете, но не слишком много людей сталкивалось с этой проблемой ..

Не могли бы вы предоставить нам помощь?

Заранее спасибо. Винсент.

1 Ответ

0 голосов
/ 07 сентября 2018

Я проверил сайт поддержки Oracle (должен был сделать это раньше), и эта ошибка связана с ошибкой в ​​12c. Например, в одном из таких документов ( Документ мета-ссылок ) говорится следующее. Поэтому, пожалуйста, передайте эту проблему в Oracle, подняв SR, и, скорее всего, они вернутся с предложением обновить версию Oracle:

Пожалуйста, примените патч слияния Ошибка 27314007: ЗАПРОС СЛИЯНИЯ НА ТОП 12.2.0.1.0 ДЛЯ ЖУКОВ 25557064 26645487

Использование этих шагов для обновления:

  1. Остановить текущий сеанс DBUA.
  2. Загрузите и примените патч к 12.2 Oracle home.
  3. Восстановление базы данных 12.1.
  4. Перезапустите обновление с 12.1 до 12.2.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...