gerar banco de dados e tabelas de esquema (DDL) no Oracle PL-SQL
-
06-07-2019 - |
Pergunta
Alguém tem uma declaração PL-SQL que eu posso usar para gerar banco de dados e tabelas do esquema do banco de dados específico sobre Oracle 10g? Eu preciso o esquema no ficheiro.sql e, se possível, compatível com a implementação ANSI-92/99 sql, para que eu possa usar o gerado .sql diretamente no sql server 2005.
Já ouviu falar de exp / imp, mas parece gerado arquivo de despejo, o que eu preciso apenas um simples ddl em ficheiro.sql.
Graças
Solução
Eu escrevi oraddlscript que chama dbms_metadata.get_ddl (Pop de resposta) para cada objeto de banco de dados de propriedade de um usuário e escreve o DDL para um arquivo.
Update: comentário respondidas
Outras dicas
Você pode tentar:
select dbms_metadata.get_ddl('TABLE',table_name,owner)
from dba_tables where owner='schema name';
Ele retorna anseia, assim você pode querer jogar com a longa buffer.
Mais sobre dbms_metadata
aqui: http: // download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_metada.htm
Se você só precisa despejar o seu esquema, este pacote livre faz um trabalho muito bom. Vamos utilizá-lo na produção diária.
Se você precisa converter do Oracle para o SQL Server, este software pode fazer um trabalho melhor. Nós usamos isso para converter entre a Oracle, MySQL e Postgreqsql.
Saudações, eu recomendo usar Oracle SQL Developer Data Modeler , já que é a partir do Oracle, pode ler as informações DDL diretamente do Dicionário de dados. Ele cria um ERD e, em seguida, você pode produzir DDL para o SQL Server 2000/2005, algumas versões do DB2 e Oracle 9i / 10g / 11g.