Geodatabase comparison
When you are evaluating the changes that have been made to a data model, you may want to compare it with the existing version to see the differences. For example, you may want to see how many fields have been added to the new schema to determine whether or not an update is necessary.
The Data Comparison tool allows you to compare an existing database to an updated version of the data model. Using this tool, you can track the differences between various aspects of the database including the schema, geometry, attributes, and spatial reference. You can also choose to compare the databases based on all these aspects or a specific one. The particular items that are compared for each comparison type are displayed in the table below.
Comparison type |
What is compared |
---|---|
ALL |
|
ATTRIBUTES_ONLY |
|
GEOMETRY_ONLY |
|
SCHEMA_ONLY |
|
SPATIAL_REFERENCE_ONLY |
|
When you are comparing databases, you also have the ability to ignore certain aspects of it, such as m and z. The Data Comparison tool provides the following options:
- IGNORE M—Ignores m tolerances and m-values
- IGNORE Z—Ignores z tolerances and z-values
- IGNORE POINTID—Ignores point ID attributes
- IGNORE EXTENSION PROPERTIES—Ignores differences in symbology and editing behavior
Additionally, you can also choose to stop the comparison process at the first instance of a difference between the two databases and choose to only record errors in the data comparison report.
The data comparison report
The results of the database comparison are output to a text file that contains the following fields for each feature class or table:
- Has_error—Indicates whether there is a difference between the two database schemas. True means that there are differences between the two schemas.
- Identifier—The aspect of the feature class that has a difference. This can be the table, geometry definition, field, spatial reference, or subtypes.
- Message—A description of the difference found with the identifier.
- Base_value—The value for the identifier in the base database.
- Test_value—The value for the identifier in the test database.
- ObjectID—The ObjectID of the item that contains the difference, as applicable.