Need a DDL but no Toad/OEM/DBArtisan or any other GUI ? Now what? End of the world?
Well, not if you know how to use the CLI and sql prompt to get to what u need. Use formatting to format and spool it to scripts for automation. This is just a compilation.
| get ddl from command line | |
| OBJECT_TYPE | COMMAND |
| (DB LINK) | SQL> set long 10000 |
| SQL> select dbms_metadata.get_ddl('DB_LINK',DB_LINK,'PUBLIC') from dba_db_links where DB_LINK='LINK_NAME'; | |
| select 'select dbms_metadata.get_ddl(''TABLE'','''||TABLE_NAME||''','''||OWNER||''') from dual;' as "--Command" from dba_tables where owner IN ('MYNAME'); | |
| user | SELECT dbms_metadata.get_ddl('USER','MDSSWEBUSER') from dual; |
| roles granted | SELECT DBMS_METADATA.GET_GRANTED_DDL( 'ROLE_GRANT','MDSSWEBUSER') from dual; |
| roles | SELECT dbms_metadata.get_ddl('ROLE','MDSSWEBUSER') from dual; |
| profile | SELECT DBMS_METADATA.GET_DDL('PROFILE','DEFAULT') FROM DUAL; |
| objects grants | SELECT DBMS_METADATA.GET_GRANTED_DDL( 'OBJECT_GRANT','MDSSWEBUSER') from dual; |
| system grants | SELECT DBMS_METADATA.GET_GRANTED_DDL( 'SYSTEM_GRANT','MDSSWEBUSER') from dual; |
| cluster | select dbms_metadata.get_ddl('CLUSTER','C_MLOG#','SYS') from dual; |
| context | select dbms_metadata.get_ddl('CONTEXT','LT_CTX') from dual; |
| function | select dbms_metadata.get_ddl('FUNCTION','TO_DATE_FUNC','SCOTT') from dual; |
| index | select dbms_metadata.get_ddl('INDEX','REPCAT$_REPCOLUMN_PK','SYSTEM') from dual; |
| java source | select dbms_metadata.get_ddl('JAVA_SOURCE','java_util','ADAM') from dual |
| select dbms_metadata.get_ddl('JAVA_SOURCE','/6c363944_Dumper','SYS') from dual | |
| library | select dbms_metadata.get_ddl('LIBRARY','UTL_SMT_LIB','SYS') from dual; |
| materialized view | select dbms_metadata.get_ddl('MATERIALIZED_VIEW','BS_TAB_MV','SYS') from dual; |
| mv log | select dbms_metadata.get_ddl('MATERIALIZED_VIEW_LOG','MLOG$_BS_TABLE','SYS') from dual; |
| operator | select dbms_metadata.get_ddl('OPERATOR','OLAP_EXPRESSION') from dual; |
| select dbms_metadata.get_ddl('OPERATOR','OLAP_EXPRESSION','SYS') from dual; | |
| package | select dbms_metadata.get_ddl('PACKAGE','XMLPARSER') from dual; |
| select dbms_metadata.get_ddl('PACKAGE','XMLPARSER','SYS') from dual; | |
| package body | select dbms_metadata.get_ddl('PACKAGE_BODY','STATSPACK','PERFSTAT') from dual; |
| procedure | select dbms_metadata.get_ddl('PROCEDURE','ORA$_SYS_REP_AUTH','SYSTEM') from dual; |
| sequence | select dbms_metadata.get_ddl('SEQUENCE','STATS$SNAPSHOT_ID','PERFSTAT') from dual; |
| synonym | select dbms_metadata.get_ddl('SYNONYM','/2fddc42_paintARGB_PRE_ONTO_S5','PUBLIC') from dual; |
| table | select dbms_metadata.get_ddl('TABLE','SQLEXPERT_PLAN1','SYSTEM') from dual; |
| tablespace | select dbms_metadata.get_ddl('TABLESPACE','USERS') from dual; |
| trigger | select dbms_metadata.get_ddl('TRIGGER','DEF$_PROPAGATOR_TRIG','SYSTEM') from dual; |
| type | select dbms_metadata.get_ddl('TYPE','XMLSEQ_IMP_T','SYS') from dual; |
| type body | select dbms_metadata.get_ddl('TYPE_BODY','ORACLE_LOADER','SYS') from dual; |
| view | select dbms_metadata.get_ddl('VIEW','DBA_PROPAGATION','SYS') from dual; |
| select dbms_metadata.get_ddl('VIEW','DBA_PROPAGATION') from dual; | |
| package | select dbms_metadata.get_ddl('PACKAGE','DBMS_METADATA','SYS') from dual; |