Вам необходимо использовать комбинацию представлений 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
Значения типа поля в 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 для получения дополнительной информации об этих определениях типов.