CHOISIR CAMPOS.RDB$FIELD_NAME DISTINCT COMME COLUMN_NAME,
CAS
QUAND DADOSCAMPO.RDB$FIELD_PRECISION > 0 PUIS « NUMÉRIQUE »
QUAND TIPOS.RDB$TYPE_NAME = « LONGTEMPS » PUIS « NOMBRE ENTIER »
QUAND TIPOS.RDB$TYPE_NAME = « COURTS » PUIS « SMALLINT »
QUAND TIPOS.RDB$TYPE_NAME = « INT64 » PUIS « NUMÉRIQUE »
QUAND TIPOS.RDB$TYPE_NAME = « VARIABLES » PUIS « VARCHAR »
QUAND TIPOS.RDB$TYPE_NAME = « TEXTE » ALORS « SE CARBONISENT »
QUAND TIPOS.RDB$TYPE_NAME = « BLOB » PUIS « BLOB SUB_TYPE »
TIPOS.RDB$TYPE_NAME D'AUTRE
EXTRÉMITÉ COMME FIELD_TYPE,
CAS
QUAND DADOSCAMPO.RDB$FIELD_TYPE DANS (16.8) PUIS DADOSCAMPO.RDB$FIELD_PRECISION
DADOSCAMPO.RDB$FIELD_LENGTH D'AUTRE
EXTRÉMITÉ COMME DATA_LENGTH, DADOSCAMPO.RDB$FIELD_SCALE COMME DATA_SCALE,
CAS CAMPOS.RDB$NULL_FLAG QUAND 1 PUIS EXTRÉMITÉ D'AUTRE DE « Y » DE « N » COMME NULLABLE
DE
RDB$RELATIONS TABELAS, RDB$RELATION_FIELDS CAMPOS, RDB$FIELDS
DADOSCAMPO, RDB$TYPES TIPOS
LÀ OÙ TABELAS.RDB$RELATION_NAME = « PESSOAS »
ET TIPOS.RDB$FIELD_NAME = « RDB$FIELD_TYPE »
ET TABELAS.RDB$RELATION_NAME = CAMPOS.RDB$RELATION_NAME
ET CAMPOS.RDB$FIELD_SOURCE = DADOSCAMPO.RDB$FIELD_NAME
ET DADOSCAMPO.RDB$FIELD_TYPE = TIPOS.RDB$TYPE
ORDRE PAR CAMPOS.RDB$FIELD_POSITION
|