Script de criação dos objetos de um owner no ORACLE
Preciso gerar um script de criação de todos os objetos para um determinado usuário do banco.
Existe algum select em alguma tabela de metadados que posso fazer isso?
1. Usando export com rows=n e import pode ajudar e muito;
– exportando as tabelas do schema RAFA
ex.: exp rafa/stoever file=./rafa.dmp grants=n statistics=none rows=n
2. Na versão 10g ou superior com o expdp (DataPump 10g);
– Realizando a exportação apenas dos metadados
ex.: expdp rafa/stoever directory=data_pump_dir dumpfile=rafa.dmp content=metadata_only
3. Utilizar um programa de engenharia reversa;
ex.: Recomendo o Toad
4. Via script SQL
ex.:
SQL> set pages 0
SQL> set lin 1000
SQL> set feedback off
SQL> set long 50000
SQL>
SQL> exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'PRETTY', true);
SQL> exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'STORAGE', true);
SQL> exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'TABLESPACE', true);
SQL> exec DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'SQLTERMINATOR',TRUE);
SQL>
SQL> spool rafa.sql
SQL> SELECT dbms_metadata.get_ddl('TABLESPACE', tablespace_name) FROM dba_segments where owner ='RAFA' group by tablespace_name;
SQL> SELECT DBMS_METADATA.GET_DDL('USER', USERNAME) FROM DBA_users WHERE USERNAME = 'RAFA';
SQL> select dbms_metadata.get_ddl(object_type,object_name,'RAFA') from dba_objects where owner='RAFA' AND OBJECT_TYPE IN ('TABLE','VIEW');
SQL> select dbms_metadata.get_ddl(decode(constraint_type,'R','REF_CONSTRAINT','CONSTRAINT'),CONSTRAINT_NAME,OWNER) FROM DBA_CONSTRAINTS WHERE OWNER = 'RAFA' AND CONSTRAINT_TYPE IN ('P','R','U','C');
SQL> select dbms_metadata.get_ddl('TRIGGER',TRIGGER_NAME,OWNER) FROM DBA_TRIGGERS WHERE OWNER ='RAFA';
SQL> select dbms_metadata.get_ddl('MATERIALIZED_VIEW',MVIEW_NAME,OWNER) FROM DBA_MVIEWS WHERE OWNER = 'RAFA';
SQL> spool off;
Nenhum comentário ainda.
Deixe um comentário
Quebras de linha e parágrafo automáticas, seu email nunca será mostrado, HTML permitido:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>