Liquibase with Snowflake
Snowflake enables data storage, processing, and analytic solutions and runs on the cloud infrastructure. Snowflake is a software-as-a-service (SaaS) that offers:
- No hardware (virtual or physical) to select, install, configure, or manage.
- Virtually no software to install, configure, or manage.
- Ongoing maintenance, management, upgrades, and tuning handled by Snowflake.
For more information, see the Snowflake documentation page.
Verified database versions
- Cloud
Support for Snowflake is built into Liquibase Open Source and Liquibase Pro, so no additional download is needed.
Getting started tutorials
- Connect Liquibase to Snowflake: configure Liquibase Pro or Liquibase Open Source for Snowflake and optionally access all Liquibase Pro features
Liquibase Pro Features
The Liquibase Snowflake Pro extension supports the use of all Liquibase Pro features including:
- Policy Checks: automatically analyze your changelogs for desired format and behavior to increase deployment success rates and uphold security best practices
- Integrate AWS with Liquibase Pro: integrate the use of AWS S3, AWS Secrets Manager, and Amazon DynamoDB Pro
- Secrets Management includes AWS Secrets Manager and HashiCorp Vault: keep your authentication data secure by integrating with third-party secrets vaults
- Structured Logging: improve your database observability by easily reading Liquibase data in your favorite analytics tool
- Liquibase Observability: generate Operation Reports of operations you perform on your database
- Flow Files: create repeatable, portable, and platform-independent Liquibase workflows to run in any of your CI/CD tools
- Remote file access: centralize file management with AWS S3 to build a reusable repository of Liquibase files you can update and retrieve
- DATABASECHANGELOGHISTORY table: record the history of all changes made to your database
- Targeted rollback: avoid collateral damage by specifying which changesets in your changelog to undo

Change Type | Supported |
---|---|
addAutoIncrement | Supported |
addCheckConstraint | Not Supported (the object does not exist on the Snowflake database) |
addColumn | Supported |
addDefaultValue | Supported |
addForeignKeyConstraint | Supported |
addLookupTable | Supported |
addNotNullConstraint | Supported |
addPrimaryKey | Supported |
addUniqueConstraint | Supported |
alterSequence | Supported |
createFunction | Supported |
createIndex | Not Supported (the object does not exist on the Snowflake database) |
createPackage | Not Supported (the object does not exist on the Snowflake database) |
createPackageBody | Not Supported (the object does not exist on the Snowflake database) |
createProcedure | Supported |
createSequence | Supported |
createSynonym | Not Supported |
createTable | Supported |
createTrigger | Not Supported (the object does not exist on the Snowflake database) |
createView | Supported |
customChange | Supported |
delete | Supported |
disableCheckConstraint | Not Supported (the object does not exist on the Snowflake database) |
disableTrigger | Not Supported (the object does not exist on the Snowflake database) |
dropAllForeignKeyConstraints | Supported |
dropCheckConstraint | Not Supported (the object does not exist on the Snowflake database) |
dropColumn | Supported |
dropDefaultValue | Supported |
dropForeignKeyConstraint | Supported |
dropFunction | Not Supported |
dropIndex | Not Supported (the object does not exist on the Snowflake database) |
dropNotNullConstraint | Supported |
dropPackage | Not Supported (the object does not exist on the Snowflake database) |
dropPackageBody | Not Supported (the object does not exist on the Snowflake database) |
dropPrimaryKey | Supported |
dropProcedure | Supported |
dropSequence | Supported |
dropSynonym | Not Supported (the object does not exist on the Snowflake database) |
dropTable | Supported |
dropTrigger | Not Supported (the object does not exist on the Snowflake database) |
dropUniqueConstraint | Supported |
dropView | Supported |
enableCheckConstraint | Not Supported (the object does not exist on the Snowflake database) |
enableTrigger | Not Supported (the object does not exist on the Snowflake database) |
executeCommand | Supported |
insert | Supported |
loadData | Supported |
loadUpdateData | Supported |
markUnused | Not Supported (the object does not exist on the Snowflake database) |
mergeColumns | Supported |
modifyDataType | Supported |
output | Supported |
renameColumn | Supported |
renameSequence | Supported |
renameTable | Supported |
renameTrigger | Not Supported (the object does not exist on the Snowflake database) |
renameView | Supported |
setColumnRemarks | Supported |
setTableRemarks | Supported |
sql | Supported |
sqlFile | Supported |
stop | Supported |
tagDatabase | Supported |
update | Supported |
