dropIndex

The dropIndex Change Type drops an existing index on a column.

Uses

You can typically use the dropIndex Change Type when you want to remove the specific index that identifies records in your database.

Once an index has been dropped, all metadata is removed. The index can’t be rebuilt and you must create it again. Also, if you drop a clustered index, the table will lose its identifiers.

Running the dropIndex Change Type

To drop an existing index in your database, follow these steps:

  1. Add the dropIndex Change Type to your changeset with the needed attributes as it is shown in the examples.
  2. Deploy your changeset by running the update command:
  3. liquibase update

Available attributes

Name Description Required for Supports Since
catalogName

Name of the catalog

all 3.0
indexName

Name of the index

all all
schemaName

Name of the schema

all
tableName Name of the table that is indexed asany, mariadb, mssql, mysql, sybase 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="dropIndex-example">
        <dropIndex indexName="idx_address"
            schemaName="public"
            tableName="person"/>  
    </changeSet>

</databaseChangeLog>
databaseChangeLog:
-  changeSet:
    id:  dropIndex-example
    author:  liquibase-docs
    changes:
    -  dropIndex:
        indexName:  idx_address
        schemaName:  public
        tableName:  person
{
    "databaseChangeLog": [
        {
            "changeSet": {
                "id": "dropIndex-example",
                "author": "liquibase-docs",
                "changes": [
                    {
                        "dropIndex": {
                            "indexName": "idx_address",
                            "schemaName": "public",
                            "tableName": "person"
                        }
                    }
                ]
            }
        }
    ]
}
--liquibase formatted sql

--changeset liquibase-docs:dropIndex-example
DROP INDEX idx_address ON public.person;

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 Not Supported No
SQL Server Supported No
SQLite Supported No
Sybase Supported No
Sybase Anywhere Supported No