Как мне перечислить все хранимые процедуры в Informix? - PullRequest
5 голосов
/ 05 августа 2011

Я ищу способ перечисления всех хранимых процедур в моей базе данных, работающих на Informix.

Есть ли в базе данных "informix".* таблица, в которой перечислены хранимые процедуры вместе с подробной информацией о них?

Ответы [ 4 ]

15 голосов
/ 05 августа 2011

Да, есть. Это называется sysprocedures. Попробуйте это, чтобы увидеть все, что можно увидеть:

select * from sysprocedures

Для получения дополнительной информации о том, какая подробная информация доступна, читайте о sysprocedures и sysprocbody и sysproccolumns .

2 голосов
/ 05 августа 2011
select sysprocedures.procname from sysprocedures;
1 голос
/ 01 марта 2016

Получите procid хранимой процедуры из запроса ниже

выберите sysprocedures.procname, sysprocedures.procid из sysprocedures

и укажите procid в следующем запроседля просмотра всей хранимой процедуры

выберите данные из sysprocbody, где procid = @procid и datakey = 'T' упорядочены по seqno

0 голосов
/ 14 июня 2017

Вы можете получить содержимое хранимых процедур (текст) с помощью dbschema: dbschema -d -f все или же dbschema -d -f

Текст процедуры также находится в таблице sysprocbody "где datakey = 'T'"

так: выберите данные из sysprocbody где procid в (выберите procid в sysprocedures, где имя_процесс = '') и datakey = 'T' заказ по seqno; - Обратите внимание, что в более старой версии Informix это жаловалось на то, что seqno должен был быть включен в список выбранных столбцов.

...