Получить тело хранимой процедуры из PostgreSQL, используя JDBC - PullRequest
0 голосов
/ 23 мая 2019

Я не могу получить тело хранимой процедуры из кода Java с использованием JDBC.

Какие методы мне следует использовать для решения этой проблемы?

Я нашел метаданные всех хранимых процедур, используя этот код:

ResultSet resultSet1 = databaseMetaData.getProcedures(connection.getCatalog(), "public", resultSet.getString(3));

Но я хочу получить все тело хранимых процедур в String.

Ответы [ 2 ]

1 голос
/ 23 мая 2019

Чтобы получить строковое значение тела SP, вы должны выполнить этот SQL:

SELECT pg_get_functiondef((
          SELECT oid
          FROM pg_proc
          WHERE pronamespace = 'public'::regnamespace
            AND proname = 'your_proc_name'
       ));

И записать результат в строку.

0 голосов
/ 23 мая 2019

Если вы не возражаете обращаться к базе данных напрямую, попробуйте

SELECT proname, prosrc
FROM pg_proc
WHERE pronamespace = 'public'::regnamespace
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...