DROP TABLE
The DROP TABLE
command removes a table. You can find the full description of this command in the PostgreSQL documentation.
Description
This command removes tables from the database. Only a table owner, a schema owner, and a superuser can drop a table. To empty a table of rows without destroying the table, use DELETE
or TRUNCATE
.
DROP TABLE
always removes any indexes, rules, triggers, and constraints that exist for the target table. However, to drop a table that is referenced by a view or a foreign-key constraint of another table, CASCADE
must be specified. CASCADE
will remove a dependent view entirely, but in the foreign-key case it will only remove the foreign-key constraint, not the other table entirely.
Usage
The general command view is listed below:
DROP TABLE [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]
Parameter | Description |
---|---|
IF EXISTS |
Do not throw an error if the table does not exist. A notice is issued in this case |
name |
The name (optionally schema-qualified) of the table to drop |
CASCADE |
Automatically drop objects that depend on the table (such as views), and in turn all objects that depend on those objects |
RESTRICT |
Refuse to drop the table if any objects depend on it. This is the default behavior |