Ver Mensaje Individual
  #2  
Antiguo 07-08-2014
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - Espańa
Posts: 18.278
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
A partir de las tablas de sistema de Interbase/Firebird puedes conocer a partir del nombre del campo y la tabla a la que pertenece toda la información. En concreto el tipo y el tamańo del campo (si aplica).

Por ejemplo una consulta como esta te devolverá información sobre el campo1 de la tabla1

Código SQL [-]
SELECT  r.RDB$RELATION_NAME as table_name, 
        r.RDB$FIELD_NAME AS field_name,
        r.RDB$DEFAULT_VALUE AS field_default_value,
        f.RDB$FIELD_LENGTH AS field_length,
        f.RDB$FIELD_TYPE  AS field_type
FROM RDB$RELATION_FIELDS r
   LEFT JOIN RDB$FIELDS f ON r.RDB$FIELD_SOURCE = f.RDB$FIELD_NAME 
where r.RDB$FIELD_NAME='campo1' and r.RDB$RELATION_NAME='Tabla1'

Segun lo que te devuelva el tipo (entero):

-->261 = 'BLOB'
-->14 = 'CHAR'
-->40 = 'CSTRING'
-->11 = 'D_FLOAT'
-->27 = 'DOUBLE'
-->10 = 'FLOAT'
-->16 = 'INT64'
-->8 = 'INTEGER'
-->9 = 'QUAD'
-->7 = 'SMALLINT'
-->12 = 'DATE'
-->13 = 'TIME'
-->35 = 'TIMESTAMP'
-->37 = 'VARCHAR'
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita