DROP OPERATOR CLASS — 删除操作符类
DROP OPERATOR CLASS [ IF EXISTS ]name
USINGindex_method
[ CASCADE | RESTRICT ]
DROP OPERATOR CLASS
删除现有的运算符类。要执行此命令,您必须是该运算符类的所有者。
DROP OPERATOR CLASS
不会删除该类引用的任何运算符或函数。如果有任何索引取决于该运算符类,则需要指定 CASCADE
,以完成该删除操作。
IF EXISTS
如果该运算符类不存在,请不要引发错误。在这种情况下,会发出通知。
名称
现有的运算符类的名称(可选指定架构限定)。
索引方法
该运算符类所针对的索引访问方法的名称。
CASCADE
自动删除依赖于该运算符类(例如索引)的对象,以及依次依赖于这些对象的全部对象(请参见第 5.15 节)。
RESTRICT
如果有任何对象依赖于该运算符类,则拒绝删除该运算符类。这是默认选项。
DROP OPERATOR CLASS
不会删除包含该类的运算符族,即使在该族中没有其他剩余内容时也是如此(特别是,在 CREATE OPERATOR CLASS
隐式创建该族的情况下)。空运算符族并无害,但为了保持整洁,您可以使用 DROP OPERATOR FAMILY
删除该族;或者可能更好地说,首先使用 DROP OPERATOR FAMILY
。
删除 B 树运算符类 widget_ops
DROP OPERATOR CLASS widget_ops USING btree;
如果存在任何使用该运算符类的现有索引,此命令将无法成功。添加 CASCADE
即可删除这些索引以及该运算符类。
SQL 标准中没有 DROP OPERATOR CLASS
语句。