↑↓ select↵ open⌫ change scopeOpen full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

Wiki / SQL Commands

DROP SCHEMA

remove a schema

English manual coverage begins with PostgreSQL 6.4. Source history and runtime observations have their own recorded version boundaries.

Reading PG 18·Select a recorded version

anchor
SQL-DROPSCHEMA
file
sql-dropschema.html
lang
en
name
DROP SCHEMA
purpose
remove a schema
purpose zh
移除一个模式
sections same as
Unknown
slug
18
synopsis html
DROP SCHEMA [ IF EXISTS ] <em class="replaceable"><code>name</code></em> [, ...] [ CASCADE | RESTRICT ]
synopsis text
DROP SCHEMA [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]

Syntax

DROP SCHEMA [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]
Syntax diagrams

Read left to right. Branches are choices, bypasses are optional, loops repeat. Select an underlined parameter to open its rule.

DROP SCHEMA IF EXISTS name , CASCADE RESTRICT

Definition PG 18

DROP SCHEMA [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]

Description

DROP SCHEMA removes schemas from the database.

A schema can only be dropped by its owner or a superuser. Note that the owner can drop the schema (and thereby all contained objects) even if they do not own some of the objects within the schema.

Parameters

IF EXISTS

Do not throw an error if the schema does not exist. A notice is issued in this case.

name

The name of a schema.

CASCADE

Automatically drop objects (tables, functions, etc.) that are contained in the schema, and in turn all objects that depend on those objects (see Section 5.15).

RESTRICT

Refuse to drop the schema if it contains any objects. This is the default.

Notes

Using the CASCADE option might make the command remove objects in other schemas besides the one(s) named.

Examples

To remove schema mystuff from the database, along with everything it contains:

DROP SCHEMA mystuff CASCADE;

Compatibility

DROP SCHEMA is fully conforming with the SQL standard, except that the standard only allows one schema to be dropped per command, and apart from the IF EXISTS option, which is a PostgreSQL extension.

See Also

ALTER SCHEMA, CREATE SCHEMA

Compare versions

Source references

Full definition and evidence JSON

Definition sources

center · PostgreSQL 18 · wiki-repair-20261023:acdca3f752438af8129b0c81dde59beb6c17e899f22b329ecaf9677980a0b496

Text language: en · wiki-repair-20261023:acdca3f752438af8129b0c81dde59beb6c17e899f22b329ecaf9677980a0b496