DROP TABLE

SQL - Language Statements

DROP TABLE

remove a table

1999-07-20

    DROP TABLE name [, ...] [ CASCADE | RESTRICT ]

1998-09-22

## Inputs

`name`

- The name (optionally schema-qualified) of an existing table to drop.

CASCADE

- Automatically drop objects that depend on the table (such as views).

RESTRICT

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

1998-09-22

## Outputs

`DROP TABLE`

- The message returned if the command completes successfully.

`ERROR: table "`name`" does not exist`

- If the specified table does not exist in the database.

1998-09-22

## Description

`DROP TABLE` removes tables from the database. Only its owner may destroy a table. A table may be emptied of rows, but not destroyed, by using `DELETE`.

`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 foreign-key constraint of another table, CASCADE must be specified. (CASCADE will remove the foreign-key constraint, not the other table itself.)

1998-09-22

### Notes

Refer to `CREATE TABLE` and `ALTER TABLE` for information on how to create or modify tables.

## Usage

To destroy two tables, `films` and `distributors`:

    DROP TABLE films, distributors;

## Compatibility

### SQL92