setColumnRemarks

The setColumnRemarks Change Type sets remarks on a column.

Uses

You can typically use the setColumnRemarks Change Type when you want to alter the existing column by adding a comment to it.

Running the setColumnRemarks Change Type

To run this Change Type, follow these steps:

  1. Add the Change Type to your changeset, as shown in the examples on this page.
  2. Specify any required attributes. Use the table on this page to see which ones your database requires.
  3. Deploy your changeset by running the update command:
  4. liquibase update

Now, you should see the column with a remark.

Available attributes

Name Description Required for Supports Since
catalogName

Name of the catalog

asany, db2, db2z, h2, mariadb, mysql, oracle, postgresql 3.0
columnName

Name of the column

all all
remarks

A short descriptive comment

all all
schemaName

Name of the schema

all
tableName Name of the table containing the column to set remarks on all all
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: BIGINT, BLOB, BOOLEAN, CHAR, CLOB, CURRENCY, DATE, DATETIME, DECIMAL, DOUBLE, FLOAT, INT, MEDIUMINT, NCHAR, NUMBER, NVARCHAR, SMALLINT, TIME, TIMESTAMP, TINYINT, UUID, VARCHAR, XML.

Also, specifying a java.sql.Types.* type is converted to the correct type as well. For example:

  • java.sql.Types.TIMESTAMP
  • java.sql.Types.VARCHAR(255)

For Snowflake, Liquibase also implements BINARY, TIME, and TIMESTAMP_NTZ. For Databricks, Liquibase also implements ARRAY<INT> and ARRAY<STRING>.

Note: To specify a complex Databricks type like ARRAY<STRING> in an XML changelog, you must specify the escape sequences &lt; and &gt; rather than < and >. See createTable.

For more information, see Liquibase Data Type Handling.

mysql   4.3 (for XML)
columnParentType Indicates the parent object type of the column we are setting remarks against. Valid values are VIEW and TABLE. Default: TABLE.      

Examples

--liquibase formatted sql

--changeset liquibase-docs:setColumnRemarks-example
ALTER TABLE person 
MODIFY COLUMN NAME VARCHAR(50) 
COMMENT 'A String';

Note: The SQL to set column remarks is platform-specific. You need to modify the example depending on your database syntax.

databaseChangeLog:
-  changeSet:
    id:  setColumnRemarks-example
    author:  liquibase-docs
    changes:
    -  setColumnRemarks:
        catalogName:  department
        columnName:  id
        remarks:  A String
        schemaName:  public
        tableName:  person
        columnDataType:  int
{
    "databaseChangeLog": [
        {
            "changeSet": {
                "id": "setColumnRemarks-example",
                "author": "liquibase-docs",
                "changes": [
                    {
                        "setColumnRemarks": {
                            "catalogName": "department",
                            "columnName": "id",
                            "remarks": "A String",
                            "schemaName": "public",
                            "tableName": "person",
                            "columnDataType": "int"
                        }
                    }
                ]
            }
        }
    ]
}
<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="setColumnRemarks-example">
        <setColumnRemarks catalogName="department"
            columnName="id"
            remarks="A String"
            schemaName="public"
            tableName="person"
            columnDataType="int"/>
    </changeSet>

</databaseChangeLog>

Database support

Database Notes Auto Rollback
DB2/LUW Supported No
DB2/z Supported No
Derby Not Supported No
Firebird Not Supported No
Google BigQuery Supported No
H2 Supported No
HyperSQL Not Supported No
INGRES Not Supported No
Informix Not Supported No
MariaDB Supported No
MySQL Supported No
Oracle Supported No
PostgreSQL Supported No
Snowflake Supported No
SQL Server Supported No
SQLite Not Supported No
Sybase Not Supported No
Sybase Anywhere Supported No