DROP INDEX
是用于删除索引的 DDL 命令。
DROP INDEX
一直存在于 PostgreSQL 中。
更改历史记录
- PostgreSQL 9.2
DROP INDEX CONCURRENTLY
语法添加(提交 8cb53654)
- PostgreSQL 8.2
DROP INDEX IF EXISTS ...
语法添加(提交 daea4d8e)
- PostgreSQL 7.3
CASCADE
和RESTRICT
子句添加(提交 7c6df91d)
- PostgreSQL 7.1
- 可以使用相同的
DROP INDEX
命令删除多个索引(提交 9ace0318)
- 可以使用相同的
示例
DROP INDEX
的基本执行示例
postgres=# DROP INDEX ocr_uripart_ix; DROP INDEX
安全地尝试删除可能不存在的索引
postgres=# DROP INDEX IF EXISTS foo; NOTICE: index "foo" does not exist, skipping DROP INDEX
尝试删除与约束关联的索引
postgres=# DROP INDEX category_pkey; ERROR: cannot drop index category_pkey because constraint category_pkey on table category requires it HINT: You can drop constraint category_pkey on table category instead.
参考文献
- PostgreSQL 文档: DROP INDEX