Oracle: listar tabelas [RESOLVIDO]

Olá pessoALL! :roll:

No MySQL, qdo eu queria informações sobre um BD (nome das tabelas, índices criados, campos das tabelas com seus respectivos tipos e tamanhos, etc, etc…) eu tinha um schema chamado information_schema de onde posso pegar todas essas informações.

Preciso muito de algo parecido no oracle. Alguém se arrisca?
Pra começar preciso listar o nome das tabelas e tb quais campos elas possuem com seus respectivos tipos e tamanhos.

Grata

1 curtida

Olha, nunca fiz isso via aplicação, então não sei se você teria problemas com relação a algum tipo de permissão de acesso, mas um select contendo metadados do banco poderia ser feito assim no Oracle:

SELECT COLUMN_NAME, DATA_TYPE FROM ALL_TAB_COLS WHERE TABLE_NAME = <NOME_DA_TABELA>

Ou então arrocha um select * nessa tabela para buscar o owner da tabela, a precisão dos campos, o tamanho, etc…

[]'s.

Se tiver permissão:

SELECT table_name FROM DBA_TABLES

Dentro dessa tabela talvez ache algumas outras informações interessantes :smiley:

[]´s

Carlos

Tenta isso:

SELECT tables FROM user_tables

Ele irá pegar todas as tabelas do usuário logado.

1 curtida

Um link interessante, talvez possa ajudar :slight_smile:

[]´s
Carlos

Gente obrigada!!!

Já deu certo! Vlw! :lol:

Oi Renata…
coincidencia encontrar você por aqui… estudei contigo na facul…

Então, dê uma olhada no DatabaseMetaData que você consegue do objeto Connection

java.sql.Connection conn = ...
DatabaseMetaData metaData = conn.getMetaData();

Dê uma olhada na documentação da Oracle

e na documentação da Sun sobre o metadata…

bjão.

[quote=lfpolli]Tenta isso:

SELECT tables FROM user_tables

Ele irá pegar todas as tabelas do usuário logado.[/quote]

select table_names from user_tables;