1

我正在寻找一个过程,该过程DLL通过其名称返回另一个存储过程,但不知道如何准确地做到这一点。这是我到目前为止所尝试的:

example output

    SET TERM ^ ;

     CREATE or ALTER PROCEDURE MY_REPORTS (
       objid my_id)
     returns (
       docdate my_datetime)
as

begin

  some body

end^

    SET TERM ; ^

非常感谢您的建议。

4

1 回答 1

2

您需要访问“系统表”,例如 RDB$PROCEDURES 和 RDB$PROCEDURE_PARAMETERS。

select p.RDB$PROCEDURE_NAME, p.RDB$PROCEDURE_SOURCE, pr.RDB$PARAMETER_NAME, pr.RDB$PARAMETER_TYPE, iif(pr.RDB$PARAMETER_TYPE=0,'INPUT','OUTPUT') PARAM_TYPE from RDB$PROCEDURES p left join RDB$PROCEDURE_PARAMETERS pr on p.RDB$PROCEDURE_NAME=pr.RDB$PROCEDURE_NAME where p.RDB$PROCEDURE_NAME='CALCULAVTO' order by pr.RDB$PARAMETER_TYPE, pr.RDB$PARAMETER_NUMBER

于 2013-03-13T09:47:25.300 回答