When you create the project, you can also specify where to put the tracking tables that Datical DB uses for the project.
Tracking table location depends on how the contents of the project are configured (single-schema or multi-schema).
- Single schema projects - use the same schema as the database changes.
- Multi-schema projects - create or identify a separate schema to use for the tracking tables.
Tracking tables:
- DATABASECHANGELOG - a database representation of the changelog file (changelog.xml), which is kept in the project file hierarchy.
- DATABASEAHANGELOGLOCK - locking table used to manage access to the changelog table.
Role of Tracking Tables in Status Operations
Tracking tables indicate the current state of the database. Each changeset that is deployed to a managed database (step, context) has an entry in the tracking table for that database.
When you use the status
command, it compares the changesets in the changelog in the REF database to the tracking tables in the database for the step.