Domanda

Chiunque abbia un'istruzione PL-SQL che posso usare per generare database e amp; schema delle tabelle per database specifici su Oracle 10g? Ho bisogno dello schema nel file .sql e, se possibile, compatibile con l'implementazione ANSI-92/99 sql, quindi posso usare il .sql generato direttamente sul server sql 2005.

Ho già sentito parlare di exp / imp, ma sembra che sia stato generato un file di dump, quello che mi serve solo un semplice ddl sul file .sql.

Grazie

È stato utile?

Soluzione

Ho scritto oraddlscript che chiama dbms_metadata.get_ddl (Pop's risposta) per ogni oggetto di database di proprietà di un utente e scrive il DDL in un file.

Aggiornamento: Commento con risposta

Altri suggerimenti

Potresti provare:

select dbms_metadata.get_ddl('TABLE',table_name,owner)
from dba_tables where owner='schema name';

Restituisce i long, quindi potresti voler giocare con il buffer lungo.

Ulteriori informazioni su dbms_metadata qui: http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_metada.htm

Se hai solo bisogno di scaricare il tuo schema, questo pacchetto gratuito fa un ottimo lavoro. Lo usiamo nella produzione quotidiana.

  

http://sourceforge.net/projects/cx-oracletools

Se devi convertire da Oracle a SQL Server, questo software potrebbe fare un lavoro migliore. Lo abbiamo usato per convertire tra Oracle, MySql e Postgreqsql.

  

http://www.spectralcore.com/fullconvert

Saluti, consiglierei di utilizzare Oracle SQL Developer Data Modeler poiché proviene da Oracle, può leggere le informazioni DDL direttamente dal Dizionario dei dati. Crea un ERD e quindi è possibile produrre DDL per SQL Server 2000/2005, alcune versioni di DB2 e Oracle 9i / 10g / 11g.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top