Как они вводят это? На моей последней работе мы привыкли редактировать текстовый файл и загружать его с помощью SQL * Plus. Вы можете просто поставить этот исходный файл под контроль версий.
Источник должен быть между "CREATE OR REPLACE PACKAGE MYPACKAGE AS
" и "END;
", за которым следует одиночная косая черта в отдельной строке ("/"); и то же самое для "ТЕЛО ПАКЕТА" вместо "ПАКЕТ".
И да, есть способ извлечь источник из Oracle. Это в таблице, строка за строкой, ищите ALL_SOURCE и USER_SOURCE. Вы можете получить его с помощью запроса, как
SELECT TEXT FROM ALL_SOURCE
WHERE TYPE='PACKAGE BODY'
AND NAME='MYPACKAGE'
AND OWNER='MYPACKAGEOWNER'
ORDER BY LINE
(не проверено, поскольку у меня больше нет доступа к Oracle) и то же самое для 'ПАКЕТА'.
Я думаю, что лучше снова загрузить его в Oracle, используя SQL * Plus; убедитесь, что установлено «SCAN OFF».