PostgreSQL 9.4.4 中文手册
上一页 | 上一级 |  | 下一页

# DROP INDEX

## 名称

DROP INDEX -- 删除索引

## 大纲

    DROP INDEX [ CONCURRENTLY ] [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]

## 描述

`DROP INDEX` 从数据库中删除一个现存的索引。要执行这个命令，你必须是索引的所有者

## 参数

`CONCURRENTLY`

  在表上删除索引的同时不对查询，插入，更新，删除加锁。 普通的 `DROP INDEX`会使表获得独占锁，阻塞其他的访问，直到索引删除完成。使用此选项, 会由阻塞变为等待，直到其他冲突事物结束。

  使用此选项时有几个注意事项。 只能指定一个索引的名称， 并且 `CASCADE` 选项不支持。 (同时, 一个索引是 `UNIQUE` or `PRIMARY KEY` 约束的时候，不能以此方式删除。) 同时，正规的 `DROP INDEX` 命令可以在事物内执行, 但是 `DROP INDEX CONCURRENTLY` 不可以在事物内执行.

`IF EXISTS`

  如果指定的索引不存在，那么发出一个 notice 而不是抛出一个错误

`name`

  要删除的索引名(可以有模式名字)。

`CASCADE`

  级联删除依赖于该索引的对象。

`RESTRICT`

  如果有依赖对象存在，则拒绝删除该索引。这个是缺省。

## Examples

此命令将删除 `title_idx`索引:

    DROP INDEX title_idx;

## 兼容性

`DROP INDEX` 是 PostgreSQL 语言扩展。在 SQL 标准里没有索引的规定。

## 请参阅

CREATE INDEX

上一页 | 起始页 | 下一页
DROP GROUP | 上一级 | DROP LANGUAGE