============= DROP OPERATOR ============= .. container:: refentry :name: SQL-DROPOPERATOR .. container:: titlepage .. container:: refnamediv .. rubric:: DROP OPERATOR :name: drop-operator DROP OPERATOR — 移除一个操作符 .. container:: refsynopsisdiv .. rubric:: 大纲 :name: 大纲 .. code:: synopsis DROP OPERATOR [ IF EXISTS ] name ( { left_type | NONE } , { right_type | NONE } ) [, ...] [ CASCADE | RESTRICT ] .. container:: refsect1 :name: id-1.9.3.119.5 .. rubric:: 描述 :name: 描述 ``DROP OPERATOR``\ 从数据库系统中 删除一个现有的操作符。要执行这个命令,你必须是该操作符的拥有者。 .. container:: refsect1 :name: id-1.9.3.119.6 .. rubric:: 参数 :name: 参数 .. container:: variablelist ``IF EXISTS`` 如果该操作符不存在则不要抛出一个错误,而是发出一个提示。 ``name`` 一个现有的操作符的名称(可以是模式限定的)。 ``left_type`` 该操作符左操作数的数据类型,如果没有左操作数就写 ``NONE``\ 。 ``right_type`` 该操作符右操作数的数据类型,如果没有右操作数就写 ``NONE``\ 。 ``CASCADE`` 自动删除依赖于该操作符的对象(例如使用它的视图),然后删除所有 依赖于那些对象的对象(见\ `节 `__\ )。 ``RESTRICT`` 如果有任何对象依赖于该操作符,则拒绝删除它。这是默认值。 .. container:: refsect1 :name: id-1.9.3.119.7 .. rubric:: 示例 :name: 示例 为类型\ ``integer``\ 移除幂操作符 ``a^b``\ : .. code:: programlisting DROP OPERATOR ^ (integer, integer); 为类型\ ``bit``\ 移除左一元按位补操作符 ``~b``\ : .. code:: programlisting DROP OPERATOR ~ (none, bit); 为类型\ ``bigint``\ 移除右一元阶乘操作符 ``x!``\ : .. code:: programlisting DROP OPERATOR ! (bigint, none); 在一条命令中删除多个操作符: .. code:: programlisting DROP OPERATOR ~ (none, bit), ! (bigint, none); .. container:: refsect1 :name: id-1.9.3.119.8 .. rubric:: 兼容性 :name: 兼容性 SQL 标准中没有\ ``DROP OPERATOR``\ 语句。 .. container:: refsect1 :name: id-1.9.3.119.9 .. rubric:: 另见 :name: 另见 `CREATE OPERATOR `__, `ALTER OPERATOR `__