Reverse Engineering huge database

Hi,
Iam trying to reverse engineer (using oracle designer) a huge database ( more than 1,000 tables and forms & reports ) developed using forms & reports - 9i.
Being a new to oracle designer, (through internet study) I was able to do reverse engineer for small database and could create only ER-diagrams. but I really don't have any idea, how to handle a huge database.
So please, if any one have an idea about reverse engineering a existing database kindly answer the below questions....
1. How to import entire database to repository?.
2. What is the best way to import the huge database, importing entire database at once or in parts ??
3. We can do reverse engineer and create ER-Diagram from existing database. but I need to create Process diagram and Dataflow diagram also, Is there any way to create this 2 diagrams automatically just like ER-diagram from existing database ??
4. How to import all forms & reports to repository at once. How to create Process diagram and Dataflow diagram from forms and reports ?
Thanking You
regards,
Lokesh

My advise is DON'T. Don't try to reverse engineer the whole application in one fell swoop.
Instead decide what parts of the application do you need to work with RIGHT NOW, and reverse engineer those parts. There are no applications that use ALL of the tables in a single form or related set of forms. In fact, I'll bet that 90% of your application uses only 10% of the tables. You may even decide that you NEVER need to reverse engineer the other 90%.
In deciding what to bring into Designer, simply ask yourself, "Why am I doing this?". If you don't plan to re-design, re-write, do major maintenance, or otherwise change the table, form, or report, skip it for now. If you need it to help understand the parts of the database that you DO plan to change, then MAYBE you want to reverse engineer it soon. Otherwise, leave it on the "to-be-done" list, and don't fret too much if you don't get to it. Believe me, if you really need it, you WILL get to it.

Similar Messages

  • Designer and Reverse Engineering Entire Database

    Does anyone know of any good papers, books, articles, etc to help out with Designer. I really am having trouble finding anything.
    What I am trying to do is capture an entire database into a new repository and I am plagued with errors. I'm a developer and really weak with Designer knowledge. I also want to find information on how I should organize my repository. Should each schema have its own application system folder if the schemas share/link information between one another?

    Hi,
    One book that I have always found good is the Oracle Designer Handbook by Paul Dorsey and Peter Koletzke. Although it's a bit long in the tooth now (only goes upto v6 I think), it's still very useful.
    The Oracle Designer Product Info link is at http://www.oracle.com/technology/products/designer/index.html
    What sort of errors are you getting? I presume you either have a live connection to the database or the DDL?
    Without knowing the contents of your schema, it usually makes sense to group each one into its own application system, subject to the number of tables, etc. If you have tables which are referenced by other schemas, they can be put into one application system and shared to the other application systems as applicable.
    Try and let us know a bit more about what you're trying to do.
    rgds, Antony

  • Reverse engineering SQL (not database)

    Hello,
    Is it planned to provide a tool to reverse engineer SQL statements as Sourceforge's Revj (Reverse Snowflakes Joins) do ?
    This tool generates an ER Diagramm from an SQL Statement without connecting to the database. a demo is available at http://snowflakejoins.com/
    Nb: It works fine with statements comming from SIEBEL or Oracle BI Analytics.
    Regards
    PAscal

    You can Reverse engineering any database that
    you have an ODBC driver installed for (you can set up an ODBC link to access via the ODBC administration utility under Oracle for Windows NT). From the menu choose Generate=> Capture Design of => Server Model. This brings up a tabbed dialouge box with three source settings.Choose the last radio group item - ODBC. There you will find a choice for MS Acess v7.0 (note:type will be set for you automatically).
    Much success.
    null

  • Reverse engineering for existing database

    Hi,
    I have two different databases, one with my application (i.e. DB1), and the other with the designer installation (i.e.DB2).
    I want to get the Reverse Engineering of my app in DB1, and I know these steps:
    - Design Editor> DB Admin tab> Generate> Capture design of > Server Model.
    OK, but I get the "Create Database user" form, and the database and user name as "DEFAULT".
    What do I have to do?
    I just want designer to reverse engineer my DB1, and I think that it will store that meta info in the DB2. Am I correct?
    I have created a new workarea and container for that purpose, but should I create a "Oracle database" before capturing the server model? and that database, should be the DB1 or the DB2? both are already created, so I think that I need just the connection.
    thanks.

    You've basically got this right - DB1 is the database you are capturing from and DB2 contains the Designer repository into which the metadata is being captured.
    Designer wants to have a database definition and a schema definition in the repository to which it can attach your table definitions. In the Design Editor use the DB Admin tab to get to a place where you can create a database definition. Create an Oracle data definition for your application database (DB1) and create a schema definition (aka User) in that database to own your tables. Then those will appear as options in the Capture design of Server Model wizard.
    Yes, I know - a lot of steps for what seems to be a simple task - reverse engineer an existing database. That's Designer for you. This is one of the reasons that I say that if ALL you want is to see your database in a server model diagram, Designer is overkill. But Designer can do SO MUCH more than that - if you want to fully use it, the annoyances are worth it.

  • How do I protect and embedded database from reverse engineering, hackers?

    Hello,
    I have an application that needs to be shipped to the customers with an embedded database that consists of critical application dependent data. The problem is that this data is top-secret information that for no reason should get in the hands of someone else because all the company value lies in this data. So my question is:
    How can I protect this data that are being shipped embedded in the application from hackers, reverse engineering etc? Is it even possible?
    Or is it secure enough to have the database credentials stored in the source code? Can reverse engineering get these credentials from the compiled application?

    TolvanTolvanTolvan wrote:
    Hello,
    I have an application that needs to be shipped to the customers with an embedded database that consists of critical application dependent data. The problem is that this data is top-secret information that for no reason should get in the hands of someone else because all the company value lies in this data. So my question is:
    How can I protect this data that are being shipped embedded in the application from hackers, reverse engineering etc? You can't. Regardless of the computer language being used to generate the executable it can always be reverse engineered so as to extract critical information.
    Is it even possible?No.
    >
    Or is it secure enough to have the database credentials stored in the source code? No.
    Can reverse engineering get these credentials from the compiled application?Yes.

  • Database reverse engineering

    Hi,
    I have to support one database where is quite a lot tables and relations.
    can you please advise me a tool which help me to get database structure (UML).
    I would get diagram where will be schemas, tables and relationship between tables, primary keys, foreign keys.
    I think that this process called "reverse engineering"
    Is there any tool which help me?
    I suppose that I connect to db via tnsnames as sys so I'll see all objects.
    Thank you for help.
    Regards,
    Tom

    Soli wrote:
    I have to support one database where is quite a lot tables and relations.
    can you please advise me a tool which help me to get database structure (UML).It is called E-R Model (Entity Relationship Model)
    I would get diagram where will be schemas, tables and relationship between tables, primary keys, foreign keys.
    I think that this process called "reverse engineering"You have many tools available. I personally prefer Oracle Designer, however it can be a real "pain" to configure it for the first time.
    As an alternative to Oracle Designer, I would suggest Oracle Sql Data Modeler. It has inherited some of the modeling features from Oracle Designer. It can do a <b>great reverse engineering job</b>. It supports databases that are 9.2.0.1 or latter.
    It is currently in Early Adopter Release and you can download it from OTN- Oracle SQL Developer Data Modeling - Early Adopter Release 2 ... and it is FREE !!! ;-)
    Other tools available, that I have used, are: Toad Data Modeler, ERWIN, Embracadero E-R Studio, etc. .. They are all good tools.

  • Tools for reverse engineering an ERD from the database

    We were thinking about using Visio as a tool for Reverse Engineering ERD's from our database. Unfortunately, we can't find any good training that goes over this part of the tool in detail.
    So, then I started thinking, maybe it's not the best tool, then. Any suggestions on whether this is the tool, or if there's a better alternative?
    Thanks
    --=cf

    Hi ,
    The Oracle Designer contained in the Oracle Dev Suite 10g can accomplish your requirement...
    Greetings....

  • Reverse Engineering a Model

    I am using SQL Data Modeller to reverse engineer an Oracle database to produce a diagram for a data model that was made a while back now. I created the diagram successfully and was very pleased with the results and the process.
    However, since creating that initial diagram the data model has again changed and I would like the recent changes to be reflected in the relational model I created in SQL Data Modeller.
    Is there an easy way to update the model? I click File > Import > Data Dictionary (which is the original method I used) I followed the steps and was presented with a list of changes and asked to merge into the model. This seemed fine. However the new tables were not added to the diagram and when I dragged them on to the diagram from the list of tables I was not shown the relationships?
    How can I easily added these new tables to the model?
    Thanks, Mike

    Check to see if the FKs between the tables you are referring to were captured in the reverses engineering. If they were, they would appear on the diagram when you drag in the new tables. If they were not captured, make sure they actually exisit in the database.
    I beleive that in order to capture a FK in the reverse engineering you must select both tables to be captured. If you only selected the "new" table, I do not think the FKs will come in but rather only the table structure, PK, and indexes on that table.

  • After reverse engineering i have still the old deleted tables

    hi ,
    i dropped a table from database schema and go to ODI and run reverse engineering on my model which linked to the database schema through my logical schema, but the deleted table still exist in my model ??? i wish this dropped table automaticly deleted from my model..

    Hi,
    Deletion actual table will not reflect while reverse engineer.
    The Meta data has been taken into ODI. It has become an object of ODI.
    So you have to directly delete the data store to remove it from ODI.
    Hope it helps.
    Regards,
    Gatha

  • Newly added column not reversed by strand  reverse engineering

    Hi Guys,
    I have reverse engg a datastore from Oracle database and later I added one new columns in the same table at database level. Now when I am doing strand reverse Engineering from the model the newly added columns are not being reflected in ODI.
    please comment/advise.
    I want to do this through strand reverse Engineering.
    Thanks,
    Giri

    Appreciate if any one share suggestion/inputs on this issue

  • Designer 6i : Server Model Generation Error while reverse engineering

    Hi there,
    I am Creating a DB Model from exising database (Reverse
    Engineering ). When I am trying to generate capture design of
    Server Model. I am getting below errors and operation fails.
    --------------------------------------------- Error Message start
    Internal API error - ORA-20291: integrity constraint
    (FK_OTB_TO_OSP) violated - parent key not found
    ORA-06512: at "REP_USER.SDD_OTB_VAL", line 22
    ORA-04088: error during execution of
    trigger 'REP_USER.SDD_OTB_VAL'
    RME-00020: Internal API error - ORA-20291: integrity constraint
    (FK_OTB_TO_OSP) violated - parent key not found
    ORA-06512: at "REP_USER.SDD_OTB_VAL", line 22
    ORA-04088: error during execution of
    trigger 'REP_USER.SDD_OTB_VAL'
    CDR-01052: Tablespace HHNEWBUILD/HHNEWBUILD.USERS is referencing
    invalid Storage Definition (ref =
    2105528996887633452799620949781640613).
    RME-00011: Operation 'ins' on TABLESPACE has failed
    RME-00222: Failed to dispatch operation to Repository
    RME-00222: Failed to dispatch operation to Repository
    --------------------------------------------- Error Message End
    My init.ora is created according to Installation guide.
    Could anyone please help me with this ???
    Your earliest action would highly appreciated.
    Thanks & regards,
    Bhavesh Doshi

    1. Bounce the Repository's DB Instance. Usually an indication
    of RME errors.
    2. Goto RAU and perform all of your maintenance
    a. Compute Statistics
    b. View Objects and Recompile all 'INVALID' objects
    c. Clear temporary tables.
    3. If you are reverse engineering with DBA privileges then you
    are going to retrieve alot of uneccessary objects. Be explicit
    in your retrieval.
    Any questions? Arnold Angel, [email protected]

  • Data Modeler : Generate direct to a schema / Reverse engineering

    Hi everybody,
    I searched for informations in the help but I didn't found any interesting information.
    I would like to know :
    - If it's possible to generate the relation model directly to a schema? If yes, where can I found documentation?
    - Is it possible to create some scripts with reverse engineering (as Designer)?
    Thanks in advance!

    Hi Cedric,
    If it's possible to generate the relation model directly to a schema?no
    Is it possible to create some scripts with reverse engineeringYou can generate DDL script for objects in relational and physical model - press "Generate DDL" icon when you are in relational model or use "File>Export>DDL File".
    You also can generate "alter statements" when you compare relational model to database, DDL files or another design.
    You can look at available demonstrations http://www.oracle.com/technetwork/developer-tools/datamodeler/overview/index.html
    Philip

  • ODI Reverse-Engineering Question

    We've been using ODI 10.3.5.1 for about a year now. The current load process was set up for us during implementation of Hyperion Planning. We are now trying to add a new dimension to our hierarchy, and I mistakenly went in and added the columns manually to all the models I could think of. I also added the columns into the source and target datastores in the interfaces manually.
    Naturally, the load did not work. I keep getting the error "invalid column name 'Cost_Center'. I have been told by the installer (over email) that i should have reverse-engineered the models, and let the program build all the datastores. I tried to do the reverse-engineering, and am now getting an error for the HYP_PLANNING model, and the HYP_ESSBASE model runs and runs and runs, without doing anything noticeable.
    How long should a reversal run? I don't believe our hierarchy is extraordinarily huge.
    This is all in the TEST environment right now, but I need to put things in LIVE for August financials, so I have until 9/9/09 to figure this stuff out. Any insights would be greatly appreciated.

    Thanks for the quick response.
    Like I said, it was done by the consultant, so I don't even know what an agent is.
    As for the error, it was:
    org.apache.bsf.BSFException: exception from Jython:
    Traceback (innermost last):
    File "<string>", line 41, in ?
    com.hyperion.odi.planning.ODIPlanningException: Failed to sync with user provisioning. Check Planning log for details
         at com.hyperion.odi.planning.wrapper.PlanningWrapper.login(Unknown Source)
         at com.hyperion.odi.planning.ODIPlanningConnection.connect(Unknown Source)
         at com.hyperion.odi.common.ODIModelImporter.importModels(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java)
         at org.python.core.PyMethod.__call__(PyMethod.java)
         at org.python.core.PyObject.__call__(PyObject.java)
         at org.python.core.PyInstance.invoke(PyInstance.java)
         at org.python.pycode._pyx0.f$0(<string>:41)
         at org.python.pycode._pyx0.call_function(<string>)
         at org.python.core.PyTableCode.call(PyTableCode.java)
         at org.python.core.PyCode.call(PyCode.java)
         at org.python.core.Py.runCode(Py.java)
         at org.python.core.Py.exec(Py.java)
         at org.python.util.PythonInterpreter.exec(PythonInterpreter.java)
         at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:144)
         at com.sunopsis.dwg.codeinterpretor.k.a(k.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSqlC.treatTaskTrt(SnpSessTaskSqlC.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
         at com.sunopsis.dwg.cmd.e.i(e.java)
         at com.sunopsis.dwg.cmd.g.y(g.java)
         at com.sunopsis.dwg.cmd.e.run(e.java)
         at java.lang.Thread.run(Unknown Source)
    Caused by: com.hyperion.planning.HspRuntimeException: Failed to sync with user provisioning. Check Planning log for details
         at com.hyperion.planning.HspJSImpl.synchronizeUserWithProvisioning(Unknown Source)
         at com.hyperion.planning.HspJSImpl.login(Unknown Source)
         at com.hyperion.planning.HspJSImpl.login(Unknown Source)
         at com.hyperion.planning.HyperionPlanningBean.Login(Unknown Source)
         at com.hyperion.planning.HyperionPlanningBean.Login(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java)
         at java.lang.reflect.Method.invoke(Method.java)
         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:279)
         at sun.rmi.transport.Transport$1.run(Transport.java:164)
         at java.security.AccessController.doPrivileged1(Native Method)
         at java.security.AccessController.doPrivileged(AccessController.java)
         at sun.rmi.transport.Transport.serviceCall(Transport.java:160)
         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:505)
         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:837)
         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:911)
         at java.lang.Thread.run(Thread.java:570)
         at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknown Source)
         at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
         at sun.rmi.server.UnicastRef.invoke(Unknown Source)
         at com.hyperion.planning.HyperionPlanningBean_Stub.Login(Unknown Source)
         ... 34 more
    com.hyperion.odi.planning.ODIPlanningException: com.hyperion.odi.planning.ODIPlanningException: Failed to sync with user provisioning. Check Planning log for details
         at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
         at com.sunopsis.dwg.codeinterpretor.k.a(k.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSqlC.treatTaskTrt(SnpSessTaskSqlC.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
         at com.sunopsis.dwg.cmd.e.i(e.java)
         at com.sunopsis.dwg.cmd.g.y(g.java)
         at com.sunopsis.dwg.cmd.e.run(e.java)
         at java.lang.Thread.run(Unknown Source)

  • Reverse Engineering Synonym from Oracle data base

    Hi All
    I am using ODI 10.1
    i want to reverse engineer synonames from my oracle database .
    When i am reverse engineering the tables and views the datastore is showing the Columns in Columns tab.
    But for Synonyms the the Column names are not available.However it is showing the data in viewdata.
    Please help me

    Hi,
    * In Topology Manager, open your Oracle Data Server and go to "Properties" tab.
    * Add a new property with key "includeSynonyms" and value "true".
    ODI only reverse engineer Private Synonyms .
    Thanks,
    Sutirtha

  • Reverse engineering to produce .DDL script

    Hi,
    Does anybody know the best way to reverse engineer all the tables in a 9i account in order to replicate the .DDL script which would have been used to create the table definitions in the first place.
    Also, does anybody know of the best way to similarly produce and ER diagram by reverse engineering either the database account, or the .DDL script which I will gain by acheiving the above.
    Thanks in advance
    Mark

    This can help you a lot:
    DBMS_METADATA
    With DBMS_METADATA you can retrieve complete database object definitions (metadata) from the dictionary by specifying:
    The type of object, for example, tables, indexes, or procedures
    Optional selection criteria, such as owner or name
    Parse items (attributes of the returned objects that are to be parsed and returned separately).
    Optional transformations on the output. By default the output is represented in XML, but callers can specify transformations (into SQL DDL, for example), which are implemented by XSLT (Extensible Stylesheet Language Transformation) stylesheets stored in the database or externally.
    DBMS_METADATA provides the following retrieval interfaces:
    For programmatic use: OPEN, SET_FILTER, SET_COUNT, GET_QUERY, SET_PARSE_ITEM, ADD_TRANSFORM, SET_TRANSFORM_PARAM, FETCH_xxx and CLOSE retrieve multiple objects.
    For use in SQL queries and for browsing: GET_XML and GET_DDL return metadata for a single named object. The GET_DEPENDENT_XML, GET_DEPENDENT_DDL, GET_GRANTED_XML, and GET_GRANTED_DDL interfaces return metadata for one or more dependent or granted objects.
    This chapter discusses the following topics:
    Summary of DBMS_METADATA Subprograms
    http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96612/d_metada.htm#ARPLS026
    Joel Pèrez
    http://otn.oracle.com/experts

Maybe you are looking for

  • Missing Workbook in Production

    Hello Friends, I am getting below error while opening a report. "Workbook doesnot exist in the document store" Looks like workbook is lost in production. Can someone please tell me, how to restore this back? This is a production report and need to be

  • Before I upgrade to Yosemite, can an "expert" please assist

    Hi all, I have been putting off updating to Yosemite after reading about lots of bugs & issues people have had. Now deciding that I would like to take the plunge, I am still worried that if something goes wrong I won't have a clue what to do. Ive jus

  • LSMW project read only keep last content for wildcard

    Hi Gurus, when I use the wildcard option to run a LSMW project . The result is the system list all the data summaries about each file covered by the wildcards.  I m used to find the data of all the covered files in the read-file  after . When I start

  • Adding a Server 2008 R2 Domain Controller at a remote site

    Hello. I have been trying to set up a hot site at a remote location.  The story is long and involved but a few weeks ago it seemed to be finally working.  Our setup is two mirrored 2008 R2 servers at main site, mirrored with Double Take.  The hot sit

  • How do i change my name on my apple id?

    how do i change my name on my apple id