TransWikia.com

Saber el tipo de datos de un campo de una tabla FireBird

Stack Overflow en español Asked by Fernando De Jesus Basurto on November 7, 2021

estoy trabajando en una base de datos de firebird y necesito hacer una consulta de los tipos de datos que tiene las tablas, en SQL Server esta esta consulta para saber los tipos de dato de una tabla:

Select  * from information_schema.columns WHERE TABLE_NAME='EJEMPLO' 

¿conocen algún equivalente de dicha consulta en firebird?

One Answer

Puedes utilizar la tabla RDB$FIELDS.

En esa tabla tienes el campo RDB$FIELD_TYPE, con el cual puedes obtener el tipo del campo.

Este campo te devolverá un valor entero correspondiente a los que se ven a continuación:

7 = SMALLINT
8 = INTEGER
10 = FLOAT
12 = DATE
13 = TIME
14 = CHAR
16 = BIGINT
27 = DOUBLE PRECISION
35 = TIMESTAMP
37 = VARCHAR
261 = BLOB

Para el tipo BLOB, hay otro campo de la tabla que te dará el subtipo (RDB$FIELD_SUB_TYPE).

Código

SELECT
    R.RDB$FIELD_NAME  AS NombreColumna,
    F.RDB$FIELD_TYPE  AS TipoColumna
FROM
     RDB$RELATION_FIELDS R
 LEFT JOIN
     RDB$FIELDS F ON R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME
WHERE
    R.RDB$RELATION_NAME='CARTERA'
ORDER BY
    R.RDB$FIELD_POSITION

Answered by Germán Estévez -Neftalí- on November 7, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP