First a couple of quick notes:
- You can synchronize your model or your database and generate an ALTER script
- When you import one or more objects from a data dictionary to your model, it ties that model to that particular database
So the challenge presnted is: who do I compare my model against a different database and generate an ALTER script?
The answer is easy:
Upgrade to version 3.3 of Oracle SQL Developer Data Modeler
When you use the Synchronize feature in version 3.3, you get a new dialog:
Once chosen, we’ll connect to do the compare as usual.
If you’re not using the stand alone modeler, and are using the modeler inside of Oracle SQL Developer, you’ll need to use Help > Check for Updates to get access to version 3.3 of the modeler.
Thanks a lot Jeff! Much appreciate it.
Another question. I’ve read your other blog on how to compare the PHYSICAL models, that by default it compares only tablespaces and sequences. I need to compare procedures and functions so I changed the Preferences to include them in compare however still I don’t see them in Compare Models window. Any suggestions?
Thanks so much!
I’m trying to synchronize a data model with data dictionary but in a Compare Models window I get only objects which exist in both: data model and data dictionary. I don’t get a table which exists only in a data dictionary.
Could you please show how to synchronize model with data dictionary when there is an extra table in a data dictionary comparing to a model.
Thanks so much!
I’m going to guess you did a RE of the data dictionary, didn’t bring that object, or created it after the import, then did the compare.
The product only compares the DD based on what you brought in at the time of import.
Thanks for your posts…
Ive been playing with the synch feature, and im still confused with it. I think Kent is having similar issues to myself.
Once a model is imported to Data Modeler, why should it be tied to a particular database?
I can get the desired results by importing from dictionary as Kent says, but the synch feature just seems flaky when anything mroe than simple changes are made to your model, unless you are continually using the same source database (which I am not).
Got another issue for you along these lines: I reverse engineered a table from the database, than made a copy of it in SDDM and changed the name and renamed some of the columns, dropped a few columns too. I then generate the DDL and build the new table (in the same schema with the original table). But now when I do the sync it shows me the original table tied to the new table and says the name has changed (along with all my other changes).
If I do Import from Data Dictionary, it seems to work fine.