2025年9月25日: PostgreSQL 18 釋出!
支援的版本: 當前 (18) / 17 / 16 / 15 / 14 / 13
開發版本: devel
不支援的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3

DROP OPERATOR CLASS

DROP OPERATOR CLASS — 刪除一個運算子類

概要

DROP OPERATOR CLASS [ IF EXISTS ] name USING index_method [ CASCADE | RESTRICT ]

描述

DROP OPERATOR CLASS 刪除一個現有的運算子類。要執行此命令,您必須是該運算子類的所有者。

DROP OPERATOR CLASS 不會刪除類所引用的任何運算子或函式。如果存在任何依賴於該運算子類的索引,則您需要指定 CASCADE 才能完成刪除。

引數

IF EXISTS

如果運算子類不存在,則不報錯。在這種情況下會發出一個通知。

name

一個現有運算子類的名稱(可選擇模式限定)。

index_method

該運算子類適用的索引訪問方法的名稱。

CASCADE

自動刪除依賴於運算子類的物件(例如索引),以及反過來依賴於這些物件的所有物件(參見 第 5.15 節)。

RESTRICT

如果任何物件依賴於該運算子類,則拒絕刪除該運算子類。這是預設行為。

註釋

DROP OPERATOR CLASS 不會刪除包含該類的運算子族,即使該族中沒有任何其他內容(特別是,當該族由 CREATE OPERATOR CLASS 隱式建立時)。一個空的運算子族是無害的,但為了整潔起見,您可能希望使用 DROP OPERATOR FAMILY 刪除該族;或者可能更好的是,首先使用 DROP OPERATOR FAMILY

示例

刪除 B-tree 運算子類 widget_ops

DROP OPERATOR CLASS widget_ops USING btree;

如果存在任何使用該運算子類的現有索引,此命令將不會成功。新增 CASCADE 可以與運算子類一起刪除這些索引。

相容性

SQL 標準中沒有 DROP OPERATOR CLASS 語句。

提交更正

如果您在文件中看到任何不正確、與您的實際經驗不符或需要進一步澄清的內容,請使用 此表格 報告文件問題。