accept file_name char prompt "Informe o nome do arquivo (exemplo c:\temp\tabela.sql): " accept table_name char prompt "Informe o nome da tabela:" set termout off; set heading off; set echo off; set verify off set pages 999; set long 90000; exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'STORAGE',false); exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'TABLESPACE',false); exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'SEGMENT_ATTRIBUTES',false); exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'SQLTERMINATOR',true); spool &&file_name select dbms_metadata.get_ddl('TABLE',upper('&&table_name')) from dual; select dbms_metadata.get_dependent_ddl('INDEX',upper('&table_name')) from dual; select dbms_metadata.get_dependent_ddl('CONSTRAINT',upper('&table_name')) from dual; spool off set termout on; prompt "Arquivo gerado: " &&file_name exit;