Como visualizar campos de uma tabela qualquer?  XML
Índice dos Fóruns » Certificação Java
Autor Mensagem
JyunPJ
Thread.start()
[Avatar]

Membro desde: 01/09/2004 00:00:00
Mensagens: 33
Offline

Existe alguma funcao, q dado um nome de uma tabela qualquer em string, me retorne os campos da tabela? Existe alguma maneira de identificar quais sao suas chaves primaria ou estrangeira?
Li uma vez que eu poderia resgatar os atributos de uma tabela da seguinte maneira:
select * from NOME_TABELA where 1=2
O ResultSet disso eu "jogaria" em um arquivo XML e dps utilizaria e faria o data binding com o JAXB, existiria outra maneira alem disso? Lembrando q dessa forma, ateh onde eu sei, nao eh possivel saber quais sao suas chaves, se existirem ...
[WWW] [ICQ]
abnelfPJ
Smalltalk
[Avatar]

Membro desde: 01/09/2004 00:00:00
Mensagens: 2
Offline

Caro colega,
utilizamos esta Query para trazer os nomes das colunas de uma tabela, lembrando que o nosso banco de dados é o DB2, não sei se é a mesma sintaxe para outros bancos, também não sei se é possivel identificar os campos chaves. Se lhe for útil aí está:
------------------------------------------------
SELECT NAME
FROM SYSIBM.SYSCOLUMNS
WHERE TBCREATOR = 'DB2XXX' AND TBNAME = 'TB_CLIENTE'
------------------------------------------------
Obs:
- Poderá fazer um select * ou select name, type etc...
- DB2XXX é o nome do banco de dados
- TB_CLIENTE é o nome da tabela.

Abnel Filho.
[WWW] [ICQ]
DiegoDiSouzaPJ
Java Ninja
[Avatar]

Membro desde: 14/07/2004 00:00:00
Mensagens: 251
Offline

Fala Jyun, blz?

Tem como vc pegar os campos de uma tabela sim.
Tenta fazer assim:



Considerando que vc ja tenha feito uma Query qualquer no banco e guardado o resultado en rs (do tipo ResultSet).
Quanto a retornar quais as chaves primarias eu fico devendo...

Qualquer dúvida posta ai q eu tento explicar melhor, blz?
[]'s
T+
[WWW] [ICQ]
JyunPJ
Thread.start()
[Avatar]

Membro desde: 01/09/2004 00:00:00
Mensagens: 33
Offline

Abnelf e Diego, valew pela resposta..
Abnelf, eu estou usando o banco de dados Postgre, entretanto nao vai ser possivel eu implementar o q eu to querendo com essa consulta.. mas valew..
Diego, to mexendo com metadata agora e estou conseguindo resgatar os nomes da tabela, eh facil d mexer, valew!! Só nao to conseguindo resgatar o nome de todas as tabelas do banco, nao sei, o codigo parece estar certo mas nao tah aparecendo nada.. Outra coisa q eu ainda nao dei uma olhada direito eh se tem alguma funcao pra distinguir quem eh chave primaria ou estrageira, mas tudo bem, obrigadao ae!
[WWW] [ICQ]
 
Índice dos Fóruns » Certificação Java
Ir para:   
Powered by JForum 2.1.8 © JForum Team