Schemas Comparison

How does the program compare database schemas?

The utility compares tables item by item: if the names of tables are equal program compares the lists of columns. If the names of two columns are equal, it compares their types, sizes, decimal digits (if applicable), nullability, default values, check constraints, comments (or MS_Description for SQL Server if available) primary and foreign keys.

For other database objects, the program compares the SQL scripts of procedures, triggers, views, etc.
Note: indexes and triggers associated with a table are placed in a separate sub-tree and the program compares them independently of their table.

There are three comparison and synchronization levels:

  1. By default, the program compares complete schemas according to object types of the project properties.
  2. In case filter strings in the project properties are not empty, the program includes or excludes some objects from the database schema.
  3. By manual selection*. The program allows the user to specify objects to be compared or synchronized manually. The user should use check-boxes with objects in the schema tree to make the selection. For this feature "compare checked" or "sync checked" menu item must be used.

* - not compatible with console mode.

Filter examples:
"system" exclude filter means "system124", "my_system" or "my_system124" tables will not be included in the schema tree.
"order" include filter means "coord" or "nord" tables will be skipped during schema tree building.

See also: comparison or synchronization performance