update
The update
Change Type updates the data in an existing table.
Uses
You can typically use the update
Change Type when you want to update a table in your changelog file and then deploy this update to your database. It can include columns and another values listed in this documentation.
Running the update
Change Type
To update a table for your database, follow these steps:
- Add the
update
Change Type to your changeset with the needed attributes as it is shown in the examples. - Deploy your changeset by running the
update
command:
liquibase update
Now, you should see an updated table.
Note: You can use the update
Change Type in combination with loadData and loadUpdateData Change Types.
Available attributes
Name | Description | Required for | Supports | Since |
---|---|---|---|---|
catalogName
|
Name of the catalog |
all | 3.0 | |
schemaName
|
Name of the schema |
all | ||
tableName
|
Name of the table |
all | all |
Nested tags
Name | Description | Required for | Supports | Multiple allowed |
---|---|---|---|---|
column
|
The data to update. Note: YAML and JSON changelogs using the |
all | all | yes |
where
|
Defines the |
all | no | |
whereParams
|
Parameters for the |
all | no |
Nested property attributes
Name | Name of the attribute |
---|---|
value
|
A value of the attribute.
Note: If it is not set, then the first |
valueNumeric
|
The integer value of the attribute. |
valueBoolean
|
The boolean value of the attribute. |
valueDate
|
The date and/or time value to set the attribute. The value should be specified in one of the
following forms: YYYY-MM-DD , hh:mm:ss , or YYYY-MM-DDThh:mm:ss . |
valueComputed
|
The value that is returned from a function or procedure call. Contains the function or column name to call. Differs from value by returning the value of the function or column you specify instead of the name of the function/column as a string. Can also perform operations on the returned value. |
valueSequenceNext
|
The name of the sequence in which the next value is used. |
valueSequenceCurrent
|
The name of the sequence in which the current value is used. |

...
<changeSet author="liquibase-docs" id="update-example">
<update catalogName="liquibase" schemaName="public" tableName="person">
<column name="address" value="address value"/>
<where>name='Bob'</where>
</update>
</changeSet>
...

...
- changeSet:
id: update-example
author: liquibase-docs
changes:
- update:
catalogName: liquibase
columns:
- column:
name: address
value: address value
schemaName: public
tableName: person
where: name='Bob'
...

...
{
"changeSet": {
"id": "update-example",
"author": "liquibase-docs",
"changes": [
{
"update": {
"catalogName": "liquibase",
"columns": [
{
"column": {
"name": "address",
"value": "address value"
}
}
],
"schemaName": "public",
"tableName": "person",
"where": "name='Bob'"
}
}
]
}
}
...

...
--changeset liquibase-docs:update-example
UPDATE liquibase.person SET address = 'address value' WHERE name='Bob';
...
Database support
Database | Notes | Auto Rollback |
---|---|---|
DB2/LUW | Supported | No |
DB2/z | Supported | No |
Derby | Supported | No |
Firebird | Supported | No |
H2 | Supported | No |
HyperSQL | Supported | No |
INGRES | Supported | No |
Informix | Supported | No |
MariaDB | Supported | No |
MySQL | Supported | No |
Oracle | Supported | No |
PostgreSQL | Supported | No |
Snowflake | Supported | No |
SQL Server | Supported | No |
SQLite | Supported | No |
Sybase | Supported | No |
Sybase Anywhere | Supported | No |