DROP OPERATOR

删除一个操作符。

概要

DROP OPERATOR [IF EXISTS] <name> ( {<left_type> | NONE} , 
    {<right_type> | NONE} ) [, ...] [CASCADE | RESTRICT]

描述

DROP OPERATOR 命令用于从数据库系统中删除现有的操作符。执行此命令时,您必须是该操作符的所有者。

参数

  • IF EXISTS
    • 若操作符不存在,则不抛出错误。此时将发出通知。
  • name
    • 现有运算符的名称(可选带模式限定)。
  • left_type
    • 运算符左操作数的数据类型;若该运算符无左操作数,则写入 NONE。
  • right_type
    • 运算符右操作数的数据类型;若该运算符无右操作数,则写入 NONE。
  • CASCADE
    • 自动删除依赖于操作符的对象(例如使用该操作符的视图),并进一步删除所有依赖于这些对象的对象。
  • RESTRICT
    • 若存在依赖该操作符的对象,则拒绝移除该操作符。此为默认行为。

示例

移除类型 integer 的幂运算符 a^b

DROP OPERATOR ^ (integer, integer);

移除类型 bit 的左一元按位取反运算符 ~b

DROP OPERATOR ~ (none, bit);

移除类型 bigint 的右一元阶乘运算符 x!

DROP OPERATOR ! (bigint, none);

使用单条命令移除多个运算符:

DROP OPERATOR ~ (none, bit), ! (bigint, none);

兼容性

SQL标准中不存在DROP OPERATOR语句。

另见

ALTER OPERATOR, CREATE OPERATOR