Database Synchronization is a mode in Code Cruiser Configuration Tool (CC Designer).

The purpose of this mode is to synchronize project entities with database (DB) structure.


This mode is available at main menu TOOLS->Database Synchronization. Also it automatically starts when you create a new project.


It is crucial the project to be in sync with database, if not it is likely that application won't work correctly.

But this doesn't mean you should have entity for each database table. Only existing in CC Designer entities should be in sync.


(!) You can create different CC Designer projects for different parts of your database.


CC Designer is not a best place to design your database. There are a aplenty of tools on the market that are better for that purpose.

So the main workflow for developing with Code Cruiser is to design a database with special tools then import it with Database Synchronization in CC Designer.


But in some cases this workflow won't work or is not effective enough.


Case 1. Renaming a field or an entity.

Synchronization mode will drop and recreate field/entity if it corresponding table was renamed in DB. There is no way to determine if a field or a table are new or renamed.

If recreation of field on entity will occur all dependencies (with other objects in configuration) will be broken.

In this case we recommend to make renaming manually in CC Designer (along with DB).


Case 2. Database is not yet ready.

If you are working on some logic that is not yet implemented in DB, or is not finalized by your DB team.

You can make changes to your entities and start to create a UI and writing custom code without waiting database structure to be finished.

Of course you won't be able to start the application but still you could continue your part of the development.

This feature improves continuous development workflow by separating server and UI development from database design process.


Case 3. Small project.

For small projects you could stick with CC Designer, it is very minimalistic but enough for basic database design.



Created with the Personal Edition of HelpNDoc: Produce online help for Qt applications