renameColumn
Renames an existing column.
Run renameColumn
To run this Change Type, follow these steps:
- Add the Change Type to your changeset, as shown in the examples on this page.
- Specify any required attributes. Use the table on this page to see which ones your database requires.
- Deploy your changeset by running the
update
command:
liquibase update
Available attributes
Name | Description | Required for | Supports | Since |
---|---|---|---|---|
catalogName
|
Name of the catalog |
all | 3.0 | |
columnDataType
|
Data type of the column. To help make scripts database-independent, Liquibase automatically converts the following generic data types to the correct database implementation: Also, specifying a
For Snowflake, Liquibase also implements Note: To specify a complex Databricks type like For more information, see Liquibase Data Type Handling. |
mariadb, mysql | all | |
newColumnName
|
New name for the column | all | all | |
oldColumnName
|
Existing name of the column to rename | all | all | |
remarks
|
A short descriptive comment |
all | ||
schemaName
|
Name of the schema |
all | ||
tableName
|
Name of the table containing the column to rename | all | all |
Examples
--liquibase formatted sql
--changeset liquibase-docs:renameColumn-example
ALTER TABLE cat.person CHANGE name full_name INT COMMENT 'A String';
databaseChangeLog:
- changeSet:
id: renameColumn-example
author: liquibase-docs
changes:
- renameColumn:
catalogName: cat
columnDataType: int
newColumnName: full_name
oldColumnName: name
remarks: A String
schemaName: public
tableName: person
{
"databaseChangeLog": [
{
"changeSet": {
"id": "renameColumn-example",
"author": "liquibase-docs",
"changes": [
{
"renameColumn": {
"catalogName": "cat",
"columnDataType": "int",
"newColumnName": "full_name",
"oldColumnName": "name",
"remarks": "A String",
"schemaName": "public",
"tableName": "person"
}
}
]
}
}
]
}
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xmlns:pro="http://www.liquibase.org/xml/ns/pro"
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/dbchangelog-ext
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
http://www.liquibase.org/xml/ns/pro
http://www.liquibase.org/xml/ns/pro/liquibase-pro-latest.xsd">
<changeSet author="liquibase-docs" id="renameColumn-example">
<renameColumn catalogName="cat"
columnDataType="int"
newColumnName="full_name"
oldColumnName="name"
remarks="A String"
schemaName="public"
tableName="person"/>
</changeSet>
</databaseChangeLog>
Database support
Database | Notes | Auto Rollback |
---|---|---|
DB2/LUW | Supported | Yes |
DB2/z | Supported | Yes |
Derby | Supported | Yes |
Firebird | Supported | Yes |
Google BigQuery | Supported | Yes |
H2 | Supported | Yes |
HyperSQL | Supported | Yes |
INGRES | Supported | Yes |
Informix | Supported | Yes |
MariaDB | Supported | Yes |
MySQL | Supported | Yes |
Oracle | Supported | Yes |
PostgreSQL | Supported | Yes |
Snowflake | Supported | Yes |
SQL Server | Supported | Yes |
SQLite | Not Supported | No |
Sybase | Supported | Yes |
Sybase Anywhere | Supported | Yes |