저장 프로 시저 매개 변수 유형을 가져옵니다
-
22-07-2019 - |
문제
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
RDB $ 필드의 필드 유형 값은 다음과 같이 정의됩니다.
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
이러한 유형 정의에 대한 자세한 내용은 인터베이스 언어 참조를 참조하십시오.
다른 팁
SELECT rdb$procedure_name,
rdb$procedure_parameters.rdb$parameter_name,
rdb$fields.rdb$field_name,
rdb$fields.rdb$field_type,
CASE rdb$fields.RDB$FIELD_TYPE
WHEN 7 THEN 'SMALLINT'
WHEN 8 THEN 'integer'
WHEN 9 THEN 'QUAD'
WHEN 10 THEN 'FLOAT'
WHEN 11 THEN 'D_FLOAT'
WHEN 12 THEN 'DATE'
WHEN 13 THEN 'TIME'
WHEN 14 THEN 'CHAR'
WHEN 16 THEN 'INT64'
WHEN 27 THEN 'DOUBLE'
WHEN 35 THEN 'TIMESTAMP'
WHEN 37 THEN 'VARCHAR'
WHEN 40 THEN 'CSTRING'
WHEN 261 THEN 'BLOB'
END AS FIELD_TYPE
FROM rdb$procedure_parameters,
rdb$fields
WHERE rdb$fields.rdb$field_name = rdb$procedure_parameters.rdb$field_source
제휴하지 않습니다 StackOverflow