我希望创建一个过程,该过程返回另一个存储过程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 ; ^
非常感谢您的建议。
您需要访问"系统表",如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