我正在尋找一種方法來列出所有在Informix上運行我的數據庫的存儲過程。如何列出Informix中的所有存儲過程?
有沒有在"informix".*
數據庫,列出了關於他們的詳細信息一起存儲過程的桌子嗎?
我正在尋找一種方法來列出所有在Informix上運行我的數據庫的存儲過程。如何列出Informix中的所有存儲過程?
有沒有在"informix".*
數據庫,列出了關於他們的詳細信息一起存儲過程的桌子嗎?
是的,有。它被稱爲sysprocedures
。試試這個,看看所有有看到:
select * from sysprocedures
有關的內容的詳細信息,請更多信息,請閱讀sysprocedures和sysprocbody和sysproccolumns。
select sysprocedures.procname from sysprocedures;
從下面的查詢
選擇sysprocedures.procname,從sysprocedures
sysprocedures.procid獲取存儲過程的PROCID和在下面的查詢來查看整個提供PROCID存儲過程
從sysprocbody中選擇數據 其中procid = @procid 和datakey = 'T' 爲了通過的SeqNo
你可以找到dbschema得到的存儲過程的內容(文本): 的dbschema -d -f所有 或 的dbschema -d -f
該過程的文本也是在sysprocbody表「其中datakey =‘T’」
這樣:從sysprocbody 選擇數據,其中PROCID在(選擇從sysprocedures其中 PROCNAME =「」 PROCID) 和噠takey ='T' order by seqno; - 請注意,在年長的Informix,這將抱怨的SeqNo必須包含在選定列的列表。
你只是用我在答覆中提供的信息回答自己的問題? –
鼠標懸停在時間戳上;他的回答是第一 –
@Adrian - 我發現谷歌的答案,並張貼之前,我看到了你的,但是傑夫,我認爲阿德里安貼出一分鐘在我面前。 – CheeseConQueso