DROP OPERATOR CLASS
Name
DROP OPERATOR CLASS -- 删除一个操作符类
Synopsis
DROP OPERATOR CLASS [ IF EXISTS ] _name_ USING _index_method_ [ CASCADE | RESTRICT ]
描述
DROP OPERATOR CLASS
删除一个现有操作符类。要执行这条命令, 你必须是此操作符类的所有者。
DROP OPERATOR CLASS
不删除被类引用的任何操作符或函数。 如果有任何索引依赖于该操作符类,必须声明CASCADE
来全部删除。
参数
IF EXISTS
如果指定的操作符类不存在,那么发出一个 notice 而不是抛出一个错误。
_name_
一个现存操作符类的名字(可以用模式修饰)。
_index_method_
操作符类所引用的索引访问方法的名字。
CASCADE
级联删除依赖于该操作符类的对象。
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
语句。
又见
ALTER OPERATOR CLASS, CREATE OPERATOR CLASS, DROP OPERATOR FAMILY