'\" t .\" Title: DROP INDEX .\" Author: The PostgreSQL Global Development Group .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 2021 .\" Manual: PostgreSQL 13.4 Documentation .\" Source: PostgreSQL 13.4 .\" Language: English .\" .TH "DROP INDEX" "7" "2021" "PostgreSQL 13.4" "PostgreSQL 13.4 Documentation" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" DROP_INDEX \- remove an index .SH "SYNOPSIS" .sp .nf DROP INDEX [ CONCURRENTLY ] [ IF EXISTS ] \fIname\fR [, \&.\&.\&.] [ CASCADE | RESTRICT ] .fi .SH "DESCRIPTION" .PP \fBDROP INDEX\fR drops an existing index from the database system\&. To execute this command you must be the owner of the index\&. .SH "PARAMETERS" .PP CONCURRENTLY .RS 4 Drop the index without locking out concurrent selects, inserts, updates, and deletes on the index\*(Aqs table\&. A normal \fBDROP INDEX\fR acquires an ACCESS EXCLUSIVE lock on the table, blocking other accesses until the index drop can be completed\&. With this option, the command instead waits until conflicting transactions have completed\&. .sp There are several caveats to be aware of when using this option\&. Only one index name can be specified, and the CASCADE option is not supported\&. (Thus, an index that supports a UNIQUE or PRIMARY KEY constraint cannot be dropped this way\&.) Also, regular \fBDROP INDEX\fR commands can be performed within a transaction block, but \fBDROP INDEX CONCURRENTLY\fR cannot\&. Lastly, indexes on partitioned tables cannot be dropped using this option\&. .sp For temporary tables, \fBDROP INDEX\fR is always non\-concurrent, as no other session can access them, and non\-concurrent index drop is cheaper\&. .RE .PP IF EXISTS .RS 4 Do not throw an error if the index does not exist\&. A notice is issued in this case\&. .RE .PP \fIname\fR .RS 4 The name (optionally schema\-qualified) of an index to remove\&. .RE .PP CASCADE .RS 4 Automatically drop objects that depend on the index, and in turn all objects that depend on those objects (see Section\ \&5.14)\&. .RE .PP RESTRICT .RS 4 Refuse to drop the index if any objects depend on it\&. This is the default\&. .RE .SH "EXAMPLES" .PP This command will remove the index title_idx: .sp .if n \{\ .RS 4 .\} .nf DROP INDEX title_idx; .fi .if n \{\ .RE .\} .SH "COMPATIBILITY" .PP \fBDROP INDEX\fR is a PostgreSQL language extension\&. There are no provisions for indexes in the SQL standard\&. .SH "SEE ALSO" CREATE INDEX (\fBCREATE_INDEX\fR(7))