1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| QRYTableFields =
'select ' +
' FLD.RDB$FIELD_TYPE' +
', FLD.RDB$FIELD_SCALE' +
', FLD.RDB$FIELD_LENGTH' +
', FLD.RDB$FIELD_PRECISION' +
', FLD.RDB$CHARACTER_SET_ID' + // CHARACTER SET
', RFR.RDB$COLLATION_ID' +
', COL.RDB$COLLATION_NAME' + // COLLATE
', FLD.RDB$FIELD_SUB_TYPE' +
', RFR.RDB$DEFAULT_SOURCE' + // DEFAULT
', RFR.RDB$FIELD_NAME' +
', FLD.RDB$SEGMENT_LENGTH' +
', RFR.RDB$NULL_FLAG' + // NULLABLE
', FLD.RDB$VALIDATION_SOURCE' + // CHECK
', FLD.RDB$DIMENSIONS'+
', RFR.RDB$FIELD_SOURCE' +
', FLD.RDB$COMPUTED_SOURCE' + // COMPUTED BY
', RDB$VALIDATION_SOURCE ' +
'from ' +
' RDB$RELATIONS REL ' +
'join RDB$RELATION_FIELDS RFR on (RFR.RDB$RELATION_NAME = REL.RDB$RELATION_NAME) ' +
'join RDB$FIELDS FLD on (RFR.RDB$FIELD_SOURCE = FLD.RDB$FIELD_NAME) ' +
'left outer join RDB$COLLATIONS COL on (COL.RDB$COLLATION_ID = RFR.RDB$COLLATION_ID and COL.RDB$CHARACTER_SET_ID = FLD.RDB$CHARACTER_SET_ID) ' +
'where ' +
' (REL.RDB$RELATION_NAME = ?) ' +
'order by ' +
' RFR.RDB$FIELD_POSITION, RFR.RDB$FIELD_NAME'; |
Partager