0 / 0 / 4
Регистрация: 28.04.2012
Сообщений: 117
|
||||||
1 | ||||||
Получить текст функции/процедуры из пакета - Oracle20.10.2016, 08:03. Показов 36730. Ответов 9
Метки нет (Все метки)
Добрый день.
Появилась задача найти в указанном пакете текст хранимой процедуры или функции. Получилось только такое:
можно ли select'om достать текст из пакета. Может у кого завалялось решение, буду очень благодарен.
0
|
20.10.2016, 08:03 | |
Ответы с готовыми решениями:
9
Получить из Oracle в Access результат выполнения процедуры Получить текст процедуры Текст,строки,слова процедуры и функции Ошибка при компиляции Java-пакета в Oracle |
476 / 239 / 114
Регистрация: 12.05.2016
Сообщений: 647
|
|
20.10.2016, 08:59 | 2 |
Нет простого способа без разбора исходника достать текст одной процедуры пакета.
Но вам могут помочь еще вьюхи user_procedures - содержит список всех методов пакетов и user_arguments - содержит параметры всех методов всех пакетов.
0
|
0 / 0 / 4
Регистрация: 28.04.2012
Сообщений: 117
|
|
20.10.2016, 12:57 [ТС] | 3 |
0
|
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
|
|
21.10.2016, 10:17 | 4 |
Сообщение от Tantay
0
|
28 / 28 / 23
Регистрация: 06.10.2016
Сообщений: 74
|
|||||||||||
21.10.2016, 12:04 | 5 | ||||||||||
если у вас есть точное расположение процедуры в пакете то так(например с 50 по 500 строку):
0
|
0 / 0 / 4
Регистрация: 28.04.2012
Сообщений: 117
|
|
21.10.2016, 14:13 [ТС] | 6 |
Есть проект в котором под сотню пакетов и под 10 тыс процедур/функций, вся логика находится в них.
Обновление проекта в основном заключается в исправлении этих процедур/функций. Проект для разных пользователей сильно ветвится, поэтому нельзя взять весь пакет и заменить его у пользователя. И возникла такая идея, что бы можно было вытащить нужные процедуры/функции и вставить их у пользователя. Без использования SQL Developer'a
0
|
28 / 28 / 23
Регистрация: 06.10.2016
Сообщений: 74
|
|
21.10.2016, 14:37 | 7 |
Могу предложить более простую вариацию. Изменяемые ф-ции вынести в параметризованные анонимные блоки и писать их в таблицу. В самих ф-циях проверяя пользователя вызывать нужный скрипт из таблицы на выполнение. Скрипты можно будет апдейтить как обычные поля таблицы при необходимости, пере компиляция не нужна.
0
|
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
|
|
21.10.2016, 14:45 | 8 |
Сообщение от FourthDimension
0
|
28 / 28 / 23
Регистрация: 06.10.2016
Сообщений: 74
|
|
21.10.2016, 15:16 | 9 |
Grossmeister, если анонимный блок параметризован + грамотно написан, то не сильно нагружает, проверено на практике. И я не принуждаю автора темы следовать моему совету. Просто предложение. Мне самому такой вариант не очень нравится из-за сложностей при отладке. Но, согласитесь, это проще, чем идея выдерать ф-ции из пакетов неким парсером. И впиливать их после изменения программно.
0
|
0 / 0 / 4
Регистрация: 28.04.2012
Сообщений: 117
|
||||||
25.10.2016, 08:58 [ТС] | 10 | |||||
Если кому нибудь будет нужно, то вот:
0
|
25.10.2016, 08:58 | |
25.10.2016, 08:58 | |
Помогаю со студенческими работами здесь
10
Используя процедуры и функции получить из матрицы вектор Процедуры и функции: Используя функцию, получить значение f(t,0.3*s)+f(s,0.2*t) Как получить имя текущей процедуры или функции? Получить значение выражения с использованием функции или процедуры Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |