Generare DDL contenute in un file dump

Questo metodo può essere usato per ottenere le DDL di ogni tipo di oggetti (INDEX, TABLE, PROCEDURE, PACKAGE etc)  dal file dump da importare, senza fare alcun import nel database.

Metodo 1

1) Creare il par file

vi impdp_sqlfile.par
dumpfile=exp_Billy.dmp
logfile=imp_sql.log
schemas=BILLY
sqlfile=ddl_imp.sql

Se si vuole importare l'intero Db inserireo FULL =Y al posto schemas=BILLY.

2) Lanciare

# export ORACLE_SID=....
# export NLS_LANG=...
# impdp  parfile=impdp_sqlfile.par

3) Aprire il file "ddl_imp.sql" per vedere le ddl.


Metodo 2

# export ORACLE_SID=....
# export NLS_LANG=...
#impdp [<user>/<passwd>@<service_name>] dumpfile=nomefile.dump SQLFILE=DATA_PUMP_DIR:ddl_imp.sql

Le ddl sono scritte nel file "ddl_imp.sql".



Nella versione Oracle 9i è possibile visualizzare il contenuto dell'export file senza importarlo utilizzando il parametro show=Y.

1) Creare il par file

vi imp_sqlfile.par
file=exp_fappo.dmp
log=imp_sql.log
fromuser=EMEN
touser=EMEN
TABLES=FAPPO
show=Y

2) Lanciare

# export ORACLE_SID=....
# export NLS_LANG=....
# imp parfile=imp_sqlfile.par

3) Il contenuto è visibile nel file di log.

Poichè IMP redirezione l'output su standar error, per salvare l'output su un file usare il seguente comando:
imp \"sys/xxxxxx as sysdba\" parfile=imp_sqlfile.par > show_imp.sql 2>&1

Post popolari in questo blog

ORA-12154: TNS: il listener non è attualmente a conoscenza del servizio richiesto nel descrittore di connessione

Create e Drop Pluggable Database