Сохранить тело пакета и спецификации

Использование инструмента SQLDeveloper и попытка использовать функцию - «Сохранить тело пакета и спецификации», чтобы создать файл экспорта с содержимым тела пакета и спецификации в одном файле. Но при этом файл создается с пустым или пустым содержимым. Чего-то не хватает, чтобы сделать некоторые настройки, чтобы сделать это возможным?

-

Я ожидаю, что функциональность экспорта будет работать

Всего 1 ответ


Мы запускаем два запроса, чтобы это «волшебство» произошло.

Если вы пользователь высокого уровня доступа, доступ к представлениям DBA_, мы запускаем это (это намного быстрее, чем представления ALL_)

SELECT 'CREATE OR REPLACE ' || text source,
       line
  FROM dba_source
 WHERE owner = :owner
   AND name = :name
   AND line = 1
   AND type = 'PACKAGE'
UNION ALL
SELECT text,
       line
  FROM dba_source
 WHERE owner = :owner
   AND name = :name
   AND line != 1
   AND type = 'PACKAGE'
 ORDER BY line

И тогда мы запустим это:

SELECT 'CREATE OR REPLACE ' || text source,
       line
  FROM dba_source
 WHERE owner = :owner
   AND name = :name
   AND line = 1
   AND type = 'PACKAGE BODY'
UNION ALL
SELECT text,
       line
  FROM dba_source
 WHERE owner = :owner
   AND name = :name
   AND line != 1
   AND type = 'PACKAGE BODY'
 ORDER BY line

Полученный файл будет содержать код CREATE или REPLACE для SPEC, после которого следует символ «/», а затем то же самое для BODY.

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

Вы генерируете код из своей или чужой схемы?

Какую версию SQL Developer и Oracle вы используете?

Попробуйте вопросы ниже и посмотрите, что вы получите.

Вы можете увидеть, что мы делаем для себя, наблюдая панель «Просмотр - Журнал» и раздел «Заявления»:

введите описание изображения здесь


Есть идеи?

10000