What support does Liquibase have for 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 are handled by Snowflake.

Verified database versions

  • Cloud

Support for Snowflake is built into Liquibase Open Source and Liquibase Secure, so no additional download is needed.

Getting started tutorials

Liquibase Secure Features

The Liquibase Snowflake Secure extension supports the use of all Liquibase Secure 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 Secure: integrate the use of AWS S3, AWS Secrets Manager, and Amazon DynamoDB Secure

  • 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

Database Inspection Support: refers to Liquibase's ability to use snapshot, diff, diff-changelog, and generate-changelog commands with the object type. This enables use cases like state-based migration and drift detection.

Change Type

Supported

abortWarehouseQueries

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

addRowAccessPolicyOnTable

Supported

addRowAccessPolicyOnView

Supported

addPrimaryKey

Supported

addUniqueConstraint

Supported

alterDatabaseProperties

Supported

alterDatabaseReplication

Supported

alterDatabaseTags

Supported

alterDynamicTable

Supported

alterFileFormat

Supported

alterMaterializedViewClustering

Supported

alterMaterializedViewContacts

Supported

alterMaterializedViewMaintenance

Supported

alterMaterializedViewProperties

Supported

alterMaterializedViewTags

Supported

alterRoleComment

Supported

alterRoleTags

Supported

alterRowAccessPolicyBody

Supported

alterRowAccessPolicyComment

Supported

alterRowAccessPolicyTags

Supported

alterSchemaContacts

Supported

alterSchemaManagedAccess

Supported

alterSchemaProperties

Supported

alterSchemaTags

Supported

alterSequence

Supported

alterSequenceComment

Supported

alterShareAccounts

Supported

alterShareComment

Supported

alterShareTags

Supported

alterStageComment

Supported

alterStageDirectoryTable

Supported

alterStageFileFormat

Supported

alterStageParams

Supported

alterStageTags

Supported

alterStandardTable

Supported

alterStreamComment

Supported

alterStreamTags

Supported

alterTask

Supported

alterViewProperties

Supported

alterWarehouseProperties

Supported

alterWarehouseState

Supported

alterWarehouseTags

Supported

bulkGrantPrivilegeToShare

Supported

bulkRevokePrivilegeFromShare

Supported

cloneDatabase

Supported

cloneDynamicTable

Supported

cloneSchema

Supported

cloneTable

Supported

createDatabase

Supported

createDatabaseFromShare

Supported

createDynamicTable

Supported

createFileFormat

Supported

createFunction

Supported

createIndex

Not Supported (the object does not exist on the Snowflake database)

createMaterializedView

Supported

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

createRole

Supported

createRowAccessPolicy

Supported

createSchema

Supported

createSequence

Supported

createShare

Supported

createStage

Supported

createStandardTable

Supported

createStandardTableColumns

Supported

createStream

Supported

createSynonym

Not Supported

createTable

Supported

createTask

Supported

createTrigger

Not Supported (the object does not exist on the Snowflake database)

createView

Supported

createWarehouse

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

dropDatabase

Supported

dropDefaultValue

Supported

dropFileFormat

Supported

dropForeignKeyConstraint

Supported

dropFunction

Not Supported

dropIndex

Not Supported (the object does not exist on the Snowflake database)

dropFunction

Not Supported

dropMaterializedView

Supported

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

dropRole

Supported

dropRowAccessPolicy

Supported

dropRowAccessPolicyOnTable

Supported

dropRowAccessPolicyOnView

Supported

dropSchema

Supported

dropSequence

Supported

dropShare

Supported

dropStage

Supported

dropStream

Supported

dropSynonym

Not Supported (the object does not exist on the Snowflake database)

dropTable

Supported

dropTask

Supported

dropTrigger

Not Supported (the object does not exist on the Snowflake database)

dropUniqueConstraint

Supported

dropView

Supported

dropWarehouse

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

executeTask

Supported

grantPrivilegeToShare

Supported

grantRole

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

renameDatabase

Supported

renameFileFormat

Supported

renameMaterializedView

Supported

renameRole

Supported

renameRowAccessPolicy

Supported

renameSchema

Supported

renameSequence

Supported

renameTable

Supported

renameTrigger

Not Supported (the object does not exist on the Snowflake database)

renameStage

Supported

renameView

Supported

renameWarehouse

Supported

revokePrivilegeFromShare

Supported

revokeRole

Supported

setColumnRemarks

Supported

setTableRemarks

Supported

sql

Supported

sqlFile

Supported

stop

Supported

swapDatabase

Supported

swapSchema

Supported

tagDatabase

Supported

undropDatabase

Supported

undropSchema

Supported

update

Supported

useWarehouse

Supported