Capturar estrutura de Dados Firebird

Delphi

25/01/2010

Ola!   Estou criando uma função em minha aplicação, e tenho que capturar a estrutura de uma tabela no firebird para configurar os componentes TSQLQuery e TClientDataset em tempo de execução. Até encontrei uma rotina para capturar o nome dos campos da tabela, porém preciso além do nome dos campos, capturar o tipo do campo, o tamanho e se é um campo requerido.   Se alguem tiver uma ideia de como resolver isso, ficarei muito grato.
Luis Godinho

Luis Godinho

Curtidas 0

Respostas

Emerson Nascimento

Emerson Nascimento

25/01/2010

se sua aplicação será usada somente para bancos FB, use as tabelas de sistema. ali você poderá obter todas as informações que precisa.
GOSTEI 0
Luis Godinho

Luis Godinho

25/01/2010

Encontrei os comandos SQL para retornar estes dados.   Caso alguem precise segue abaixo os códigos:   Retornar informações da tabela.   SELECT * FROM rdb$relation_fields
WHERE RDB$RELATION_NAME = :PTabela
ORDER BY rdb$field_position   Retorna informações do Dominio   select rdb$fields.rdb$field_name,rdb$types.rdb$type_name,
rdb$fields.rdb$field_length,rdb$fields.rdb$null_flag,
rdb$fields.rdb$default_source,rdb$fields.rdb$validation_source from rdb$fields
join rdb$types on rdb$fields.rdb$field_type = rdb$types.rdb$type
where rdb$fields.rdb$field_name = :pCampo
and rdb$types.rdb$field_name = 'RDB$FIELD_TYPE'   Obrigado!
GOSTEI 0
POSTAR