Alter Standard Table - Schema Evolution
Modifies schema evolution settings. Schema evolution enables flexible schema changes without explicit DDL commands.
Known limitations:
This change type does not support automatic rollback.
Snowflake snapshots created with Liquibase Secure 5.1 are incompatible with earlier versions due to enhanced object type detection for TABLES and VIEWS. Regenerate all snapshots with 5.1 after upgrading to avoid false differences in diff and diff-changelog operations.
Available attributes
Attribute | Type | Description | Required |
|---|---|---|---|
| String | Name of the catalog (database) containing the table | No |
| String | Name of the schema containing the table | No |
| String | Name of the table to alter | Yes |
| Boolean | Only execute if the table exists | No |
alterSchemaEvolution nested attributes
Attribute | Type | Description | Required |
|---|---|---|---|
| Boolean | New schema evolution value | No* |
| Boolean | If true, unsets schema evolution | No* |
*Exactly one of newEnableSchemaEvolution or unsetEnableSchemaEvolution must be specified.
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:pro-snowflake="http://www.liquibase.org/xml/ns/pro-snowflake"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
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/pro-snowflake
http://www.liquibase.org/xml/ns/pro-snowflake/liquibase-pro-snowflake-latest.xsd">
<!-- Enable schema evolution -->
<changeSet id="enable-schema-evolution" author="examples">
<pro-snowflake:alterStandardTable tableName="FLEXIBLE_SCHEMA">
<pro-snowflake:alterSchemaEvolution newEnableSchemaEvolution="true"/>
</pro-snowflake:alterStandardTable>
</changeSet>
<!-- Disable schema evolution -->
<changeSet id="disable-schema-evolution" author="examples">
<pro-snowflake:alterStandardTable tableName="STRICT_SCHEMA">
<pro-snowflake:alterSchemaEvolution newEnableSchemaEvolution="false"/>
</pro-snowflake:alterStandardTable>
</changeSet>
<!-- Unset schema evolution -->
<changeSet id="unset-schema-evolution" author="examples">
<pro-snowflake:alterStandardTable tableName="LEGACY_TABLE">
<pro-snowflake:alterSchemaEvolution unsetEnableSchemaEvolution="true"/>
</pro-snowflake:alterStandardTable>
</changeSet>
</databaseChangeLog>