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.
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…