Pessoal,
estou necessitando capturar uma lista contendo os nomes de tabelas, procedures e triggers existentes num determinado banco de dados. Isso tem que ser via Java, pois a minha aplicação irá manipular estes dados, criando, alterando e destruindo os mesmos.
O foco é no banco de dados Firebird, mais estou tentando fazer o mais genérico possível. Já dei uma procurada, mais ainda não consegui achar algo que me ajude.
Se existir como fazer só via classes própria do jayBird, serve. Mais dou preferências a métodos genéricos presentes no padrao jdbc.
Agradeço a todos por qualquer informação.
Caio.
Sugiro que dê uma olhada na interface DatabaseMetaData do pacote java.sql , pois cada fabricante de SGBD, implementa os métodos desta interface conforme as particularidades do seu produto/driver.
[]s
Baixe uma ferramenta de Administração em:
http://www.firebird.com.br/download.php
e dentro dos codigos fontes existem codigos SQL que obtem a estrutura e as informações da tabela, do usuario, SP, Triggers …
indico o IBWebAdmin (em php) … descompact e dentro da pasta inc tem uns arquivos com os SQL de seu interesse
Pessoal,
valeu pelas respostas.
Adnrelcvc, realmente eu andei procurando na net, e ví que para pegar as informações que preciso a melhor maneira é obter nas tabelas de sistemas. Realmente algo assim é difícil fazer genérico. Irei me focar somente no Firebird.
Olhei o metadata e ele retorna muita pouca informação, pois no firebird tem coisas muito específicas como os domains, UDFS etc.
Vou baixar esta ferramenta que você disse e dar uma olhada nos sqls que ele utiliza para pegar informações do banco.
Valeu!!!