﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>FranklinFaces.com - Oracle &amp; SQL Server Database Forums for all IT Professionals / Oracle Forum / Oracle Database Administration  / Reverse Engineering Oracle Database Schema / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>FranklinFaces.com - Oracle &amp; SQL Server Database Forums for all IT Professionals</description><link>http://www.franklinfaces.com/</link><webMaster>no-reply@FranklinFaces.com</webMaster><lastBuildDate>Thu, 09 Feb 2012 11:08:34 GMT</lastBuildDate><ttl>20</ttl><item><title>Reverse Engineering Oracle Database Schema</title><link>http://www.franklinfaces.com/Topic89-97-1.aspx</link><description>Have you ever wanted to reverse engineer a database schema but didn't have a GUI tool such as TOAD or DBArtisian?&lt;br&gt;We all know how tricky this was and very time consuming prior to version 9i.&lt;br&gt;&lt;br&gt;Here are some helpful tips in getting you the results with some of the newer features that allow you to do this.&lt;br&gt;&lt;br&gt;Hope it helps and do leave some feedback and your experiences regarding this.&lt;br&gt;&lt;br&gt;Thanks,&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Use can use GET_DDL and granted_ddl to retrieve the dll of objects in the database.&lt;br&gt;Here is some examples:&lt;br&gt;&lt;br&gt;dbms_metadata.get_ddl&lt;br&gt;&lt;br&gt;The general syntax of GET_DDL is&lt;br&gt;GET_DDL(object_type, name, schema, version, model, transform);&lt;br&gt;&lt;br&gt;&lt;br&gt;select DBMS_METADATA.GET_DDL('TABLE',table_name) from user_tables;&lt;br&gt;&lt;br&gt;select DBMS_METADATA.GET_DDL('INDEX','DEPT_IDX','USER_NAME') from dual;&lt;br&gt;&lt;br&gt;select DBMS_METADATA.GET_DDL('USER','USER_NAME') from dual;&lt;br&gt;&lt;br&gt;select DBMS_METADATA.GET_GRANTED_DDL('OBJECT_GRANT','USER_NAME') from dual;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Remember when running these commands you will need to adjust your pagesize and linesize:&lt;br&gt;&lt;br&gt;set linesize 110&lt;br&gt;set pagesize 100&lt;br&gt;set long 1000&lt;br&gt;set echo off&lt;br&gt;set heading off&lt;br&gt;&lt;br&gt;You can adjust these based on how much data it's retrieved from the statement.&lt;br&gt;&lt;br&gt;&lt;br&gt;[b]Example:[/b]&lt;br&gt;&lt;br&gt;SQL&gt; set long 10000&lt;br&gt;SQL&gt; select  DBMS_METADATA.GET_DDL('DB_LINK','CNV_LNK','PUBLIC') from dual;&lt;br&gt;&lt;br&gt;&lt;br&gt;DBMS_METADATA.GET_DDL('DB_LINK','CNV_LNK','PUBLIC')&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;&lt;br&gt;  CREATE PUBLIC DATABASE LINK "CNV_LNK"&lt;br&gt;   CONNECT TO "CNV_RO" IDENTIFIED BY VALUES '043C7G221E5F5C736E3D91704EAFG419HJ1411100639LLF12X'&lt;br&gt;   USING '(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = NJCVRNYKSPDB01)(PORT =1521))(CONNECT_DATA = (SID = PROD)))'&lt;br&gt;&lt;br&gt;&lt;br&gt;</description><pubDate>Mon, 23 Feb 2009 15:01:42 GMT</pubDate><dc:creator>Admin</dc:creator></item></channel></rss>
