o..*_*..o 2 firebird types stored-procedures
我需要在Firebird数据库中读取存储过程的参数类型.
我能够读出他们的名字,如果他们是输入或输出参数,但我在哪里可以得到他们的类型?或者你是如何解决这个问题的?
您需要使用RDB$PROCEDURE_PARAMETERS和RDB$FIELDS视图的组合,如下所示:
SELECT rdb$procedure_name, rdb$procedure_parameters.rdb$parameter_name,
rdb$fields.rdb$field_name, rdb$fields.rdb$field_type
FROM rdb$procedure_parameters, rdb$fields
WHERE rdb$fields.rdb$field_name = rdb$procedure_parameters.rdb$field_source
Run Code Online (Sandbox Code Playgroud)
RDB $ FIELDS中的字段类型值定义如下:
BLOB - 261 CHAR - 14 CSTRING - 40 D_FLOAT - 11 DOUBLE - 27 FLOAT - 10 INT64 - 16 INTEGER - 8 QUAD - 9 SMALLINT - 7 DATE - 12 TIME - 13 TIMESTAMP - 35 VARCHAR - 37
有关这些类型定义的详细信息,请参阅Interbase语言参考.