DROP TYPE
Read PG 18 manual ↗remove a data type
Syntax
DROP TYPE [ 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.
Description
DROP TYPE removes a user-defined data type. Only the owner of a type can remove it.
Parameters
IF EXISTSDo not throw an error if the type does not exist. A notice is issued in this case.
nameThe name (optionally schema-qualified) of the data type to remove.
CASCADEAutomatically drop objects that depend on the type (such as table columns, functions, and operators), and in turn all objects that depend on those objects (see Section 5.15).
RESTRICTRefuse to drop the type if any objects depend on it. This is the default.
Examples
To remove the data type box:
DROP TYPE box;
Compatibility
This command is similar to the corresponding command in the SQL standard, apart from the IF EXISTS option, which is a PostgreSQL extension. But note that much of the CREATE TYPE command and the data type extension mechanisms in PostgreSQL differ from the SQL standard.
See Also
ALTER TYPE, CREATE TYPEVersion history 4
- PG 19 → 20changed
- PG 18 → 19changed
- PG 16 → 17changed
- PG 11 → 12changed
Related entries
Definition snapshot: 2026-09-14T13:14:25.700916+00:00@99e6866c · English manual source