PrimaryKeyOnCreateTable
Last updated: January 22, 2026
Flags table creation statements that do not define a PRIMARY KEY, promoting database design best practices by ensuring every table has a unique identifier for rows, which is essential for data integrity, relationships, and efficient querying.
Uses
Property | Value |
Liquibase version required | 4.12.0+ |
Scope (--checks-scope) | changelog |
Default status | enabled |
Default severity (exit code) | 0 ("INFO") |
Customizable settings | Yes (dynamic) |
Note: PrimaryKeyOnCreateTable only supports modeled changeset types. If you use this Policy Check with unmodeled changesets (formatted SQL changelogs as well as sql and sqlFile changeTypes), a message will appear stating the changeset was skipped.
Before you begin
Ensure that you have correctly specified your Liquibase Secure license key.
Ensure that the
--checks-scopeparameter includes the scope of this check.
Changelog checks prerequisites
Procedure
Enable
This check is enabled by default. To verify that it is currently enabled, run the checks show command:
liquibase checks show --check-name=<string>
Customize
This check is dynamic, meaning you can customize its settings. See the table on this page for more information.
1. Once you've enabled the check, follow the steps in the CLI to set new values.
Default values are shown in [brackets]. You can use these by pressing Enter. Alternatively, specify custom values. If a customization setting does not have a default value, you must specify custom values.
2. When finished, verify that your configuration is correct by running the checks show command.
liquibase checks show --check-name=<string>
3. If you need to make any other changes, run the checks customize command:
liquibase checks customize --check-name=<string>
Note: If you want to create another variant of this check with different settings, use the checks copy command to create a copy of the original check and then use the checks customize command to customize it.
Run
To run the check, use the checks run command.