markUnused

Note: This is a Liquibase Pro Change Type, so you need a Liquibase Pro License Key to use it.

The markUnused Change Type is an Oracle-specific Change Type that marks a column as unused. The markUnused Change Type helps to avoid database slowdowns caused by dropping a populated column.

Uses

You can typically use the markUnused Change Type to mark columns as unused rather than dropping them immediately, which allows you to decide the best time to drop those columns.

Run markUnused

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

Available attributes

Name Description Required for Supports
catalogName

Name of the catalog

all
columnName

Name of the column

all all
schemaName

Name of the schema

all
tableName

Name of the table

all all

Examples

<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="markUnused-example">
        <pro:markUnused  catalogName="cat"
            columnName="id"
            schemaName="public"
            tableName="person"/>
    </changeSet>

</databaseChangeLog>
databaseChangeLog:
-  changeSet:
    id:  markUnused-example
    author:  liquibase-docs
    changes:
    -  markUnused:
        catalogName:  cat
        columnName:  id
        schemaName:  public
        tableName:  person
{
    "databaseChangeLog": [
        {
            "changeSet": {
                "id": "markUnused-example",
                "author": "liquibase-docs",
                "changes": [
                    {
                        "markUnused": {
                            "catalogName": "cat",
                            "columnName": "id",
                            "schemaName": "public",
                            "tableName": "person"
                        }
                    }
                ]
            }
        }
    ]
}
--liquibase formatted sql

--changeset liquibase-docs:markUnused-example
ALTER  TABLE  cat.person  SET  UNUSED  COLUMN  id;

Database support

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