addCheckConstraint

Note: This is a Liquibase Pro Change Type, so you need a Liquibase Pro License Key to use it.

Adds a check constraint to an existing column or set of columns in a table.

Available attributes

Name Description Required for Supports Since
catalogName

Name of the catalog

all 3.0
constraintBody

The constraint SQL

all all
constraintName

Name of the constraint

all all
disabled

Boolean. Specifies whether the constraint is disabled.

all
schemaName

Name of the schema

all
tableName

Name of the table to create the check constraint on

all all
validate

Set to true if the constraint has ENABLE VALIDATE set, or false if the constraint has ENABLE NOVALIDATE set.

all

Examples

<databaseChangeLog
    xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
    xmlns:pro="http://www.liquibase.org/xml/ns/pro"
    xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
        http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-latest.xsd
        http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
        http://www.liquibase.org/xml/ns/pro http://www.liquibase.org/xml/ns/pro/liquibase-pro-latest.xsd">

    <changeSet  author="liquibase-docs"  id="addCheckConstraint-example">
        <pro:addCheckConstraint  catalogName="cat"
            constraintName="const_name"
            disabled="true"
            schemaName="public"
            tableName="person"
            validate="true">A String</pro:addCheckConstraint>
    </changeSet>

</databaseChangeLog>
databaseChangeLog:
-  changeSet:
    id:  addCheckConstraint-example
    author:  liquibase-docs
    changes:
    -  addCheckConstraint:
        catalogName:  cat
        constraintBody:  A String
        constraintName:  const_name
        disabled:  true
        schemaName:  public
        tableName:  person
        validate:  true
{
    "databaseChangeLog": [
        {
            "changeSet": {
                "id": "addCheckConstraint-example",
                "author": "liquibase-docs",
                "changes": [
                    {
                        "addCheckConstraint": {
                            "catalogName": "cat",
                            "constraintBody": "A String",
                            "constraintName": "const_name",
                            "disabled": true,
                            "schemaName": "public",
                            "tableName": "person",
                            "validate": true
                        }
                    }
                ]
            }
        }
    ]
}
--liquibase formatted sql

--changeset liquibase-docs:addCheckConstraint-example
ALTER  TABLE  cat.[public].person  ADD  CONSTRAINT  const_name  CHECK  (A  String);
ALTER  TABLE  cat.[public].person  NOCHECK  CONSTRAINT  const_name;

Database support

Database Notes Auto Rollback
DB2/LUW Supported Yes
DB2/z Supported Yes
Derby Not Supported No
Firebird Not Supported No
H2 Not Supported No
HyperSQL Not Supported No
INGRES Not Supported No
Informix Not Supported No
MariaDB Not Supported No
MySQL 5.7 Not Supported No
MySQL 8.0 Supported Yes
Oracle Supported Yes
PostgreSQL Supported Yes
Snowflake Not Supported No
SQL Server Supported Yes
SQLite Not Supported No
Sybase Not Supported No
Sybase Anywhere Not Supported No