Как выбрать определения функций в качестве запроса? - PullRequest
0 голосов
/ 07 февраля 2019

Я бы хотел выбрать PL / SQL-определение всех функций в схеме в качестве запроса.Причина в том, что я хочу запросить все мои функции для определенного текста.

Я могу сделать это для представлений, например, так:

select * from all_views

Однако я не уверен, как это сделать сфункции.

Можно ли это сделать?

1 Ответ

0 голосов
/ 07 февраля 2019

Чтобы получить список всех функций, вы можете запросить ALL_OBJECTS представление словаря :

SELECT * FROM all_objects WHERE object_type = 'FUNCTION';

Это даст вам все функции, доступные текущему пользователю (списки DBA_OBJECTS)все объекты в базе данных).

Затем вы можете получить источник текста функции из представления ALL_SOURCE:

SELECT o.object_name, s.line, s.text 
FROM all_objects o
INNER JOIN all_source s 
    ON s.name = o.object_name AND s.type = o.object_type AND s.owner = o.owner
WHERE o.object_type = 'FUNCTION';
...