September 26, 2024: PostgreSQL 17 Released!
Supported Versions: Current (17) / 16 / 15 / 14 / 13 / 12
Development Versions: devel
Unsupported versions: 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 / 7.2 / 7.1
This documentation is for an unsupported version of PostgreSQL.
You may want to view the same page for the current version, or one of the other supported versions listed above instead.

DROP RULE

Name

DROP RULE  --  remove a rewrite rule

Synopsis

DROP RULE name ON relation [ CASCADE | RESTRICT ]
  

Inputs

name

The name of an existing rule to drop.

relation

The name (optionally schema-qualified) of the relation the rule applies to.

CASCADE

Automatically drop objects that depend on the rule.

RESTRICT

Refuse to drop the rule if there are any dependent objects. This is the default.

Outputs

DROP RULE

Message returned if successful.

ERROR: Rule "name" not found

This message occurs if the specified rule does not exist.

Description

DROP RULE drops a rule from the specified PostgreSQL rule system. PostgreSQL will immediately cease enforcing it and will purge its definition from the system catalogs.

Notes

The DROP RULE statement is a PostgreSQL language extension.

Refer to CREATE RULE for information on how to create rules.

Usage

To drop the rewrite rule newrule:

DROP RULE newrule ON mytable;
   

Compatibility

SQL92

There is no DROP RULE in SQL92.