PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

PostgreSQL Check Constraint in Liquibase

Dies sollte der Weg sein:

     <column name="int_value" type="INT" >
        <constraints checkConstraint="CHECK (int_value &gt;= 0 AND int_value &lt;= 6)"/>
    </column>

Das aktuelle Liquibase (3.5.1) ignoriert jedoch checkConstraint Attribut. Es gibt einen Pull Request , aber es wird nur zum Meilenstein 4.0 hinzugefügt.

Daher müssen wir vorerst das rohe SQL für Check Constraints verwenden. Das funktioniert bei mir:

<createTable tableName="test">
     <column name="int_value" type="INT"/>
</createTable>
<sql>
    ALTER TABLE test ADD CONSTRAINT int_check CHECK (int_value &gt;=0 AND int_value &lt;= 6)
</sql>