Show create table no Oracle?
Se você estava procurando o comando show create table do Mysql no Oracle, seus problemas acabaram!
Enjoy:
SELECT dbms_metadata.get_ddl('TABLE', 'USUARIO', 'SYSGROUP')
FROM dual;
É possível buscar outras definições também, além de tabelas. Basta mudar o primeiro parâmetro para o que for desejado, como ‘INDEX’, por exemplo. No caso de tabelas, o segundo parâmetro corresponde ao nome da tabela e o terceiro o nome do schema.
Bom, no meu schema aqui só funcionou com os parâmetros em letra maiúscula.. (O.ô)
É isso, pessoal. Espero que a dica ajude!
Da minha pouca experiência com Oracle, até onde pude entender por tentantiva e erro o Oracle grava todos seus metadados com letras maiúsculas, por isso sempre que tu usas aspas simples na consulta, como nesse caso, é certo que o nome entre parênteses precisará ser passado em letra maiúscula. Já para comandos usuais como “describe”, onde o nome da tabela não é passado entre aspas, tanto faz usar maiúsculas ou minúsculas.
Boa essa dica, eu não tinha esse comando no meu arsenal.
Verdade, pode ser isso mesmo. Eu testei muito em letras minúsculas e nada de funcionar… Depois eu pedi um toque para o nosso DBA e ele comentou que precisava ser maiúscula, mas também não explicou o porquê.
[…] eu descobri recentemente que era possível, via SQL, descobrir a DDL original de uma tabela, pensei: deve ser possível […]