TMS Data Modeler allows you to version control your database model. This means you can archive (snapshot) your existing model into versions and then later compare versions to check differences between them and generate SQL update scripts to "upgrade" the database schema from one version to another.
Creating (archiving) versions
To archive the version you are currently working on and start the next one, select Archive on the Versions tab in the Home ribbon or click on the File Menu button and select Archive version.
The dialog will allow you to add any relevant information to identify this version later. By clicking Archive you will automatically close this version and start the subsequent one.
Version management window
To open the version management window, select Manage on the Versions tab in the Home ribbon.
The Project versions window will list all saved versions, the last date/time of the alterations and the complete file name.
To perform a comparison between versions:
1. Select Compare in the Versions tab of the Home ribbon.
2. You will be prompted to select the Base version and the Compare to version. Any existing version can be chosen.
3. The Compare versions window will list each version's objects. All selected objects are organized hierarchically in two synchronized project trees. You are able to edit the information below:
•Hide unchanged items: When selected, this option hides all items that are identical in both versions, unchanged by update/insert/delete. The only items shown are the ones that differ. By default, this option is unchecked and all objects are shown, with the differences highlighted in bold.
•Filter the desired objects: select which objects are compared on the project trees. The options are Tables, Indexes, Relationships, Triggers, Domains, Procedures and Views. By default all objects are checked.
•Action: defines which action will be taken regarding the differences found after version comparison. By default, the option Generate database script is selected, and results in the generation of an impact script to update the database with all the selected differences after clicking Generate.
•Project trees: The objects that are differ between the versions are in bold.
oThe middle column allows you to select what changes will be included on the impact script. Selected changes are marked with a icon_checkbox.jpg checkbox icon.
oBy expanding the bold objects you will get to the exact item where the difference is. For example, if a field exists in one version but does not exist on the other, the corresponding tables are in bold. When expanding the table, the item Fields is in bold, and when expanding Fields, only the different fields remain in bold.
oWhen clicking on the bold object, the object creation scripts are compared side by side highlighting the differences on the text boxes below.
oWhen an object is non-existent in one of the versions, it is signalized on this project tree with the text '(not exists)' besides the equivalent field on the other project. In this case, the impact script will generate commands to add or remove the item.
4. By selecting Generate, an impact script will be created and shown to allow you to update your current version with the compared versions' settings. Selecting Back will take you to the dialog to select other versions to be compared. Selecting Close will close the dialog without saving any changes.