Subject | Re: Firebird 1.5 : Retrieval of Procedure Metadata |
---|---|
Author | brian.gooch.uk@btinternet.com |
Post date | 2010-06-28T10:14:23Z |
--- In firebird-support@yahoogroups.com, Milan Babuskov <milanb@...> wrote:
Thanks for the pointer. I confirm that I am able to retrieve the parameter data via a join between RDB$FIELDS and RDB$PROCEDURE_PARAMETERS using the RDB$FIELD_SOURCE as the PK-FK link.
Kind Regards,
Brian Gooch
>Milan,
> brian.gooch.uk@... wrote:
> > we also need to retrieve each parameter's datatype.
> > The system tables tend to reveal that the datatype info is stored in the Blob which contains that procedure's text.
>
> Not really. Only internal variables (DECLARE VARIABLE) are stored in
> source Blob.
>
> Datatype of parameters is stored in domain table: RDB$FIELDS, just like
> table/view columns. RDB$FIELD_SOURCE will tell you which domain is used.
>
> To get the exact datatype from RDB$FIELDS info, you can look at isql or
> FlameRobin source code. For example, take a look at loadProperties() and
> dataTypeToString() functions in this file:
>
> http://tinyurl.com/flamerobindomain
>
> HTH
>
> --
> Milan Babuskov
>
> ==================================
> The easiest way to import XML, CSV
> and textual files into Firebird:
> http://www.guacosoft.com/xmlwizard
> ==================================
>
Thanks for the pointer. I confirm that I am able to retrieve the parameter data via a join between RDB$FIELDS and RDB$PROCEDURE_PARAMETERS using the RDB$FIELD_SOURCE as the PK-FK link.
Kind Regards,
Brian Gooch