Removes a user-defined type.
- See also:
CREATE TYPE , ALTER TYPE , DESCRIBE TYPE , SHOW TYPES , UNDROP TYPE
Syntax¶
Parameters¶
nameSpecifies the identifier for the user-defined type to drop.
If the identifier contains spaces or special characters, the entire string must be enclosed in double quotes. Identifiers enclosed in double quotes are also case-sensitive.
For more information, see Identifier requirements.
Access control requirements¶
A role used to execute this operation must have the following privileges at a minimum:
Operating on an object in a schema requires at least one privilege on the parent database and at least one privilege on the parent schema.
For instructions on creating a custom role with a specified set of privileges, see Creating custom roles.
For general information about roles and privilege grants for performing SQL actions on securable objects, see Overview of Access Control.
Usage notes¶
Before you drop a user-defined type, verify that no tables or other database objects reference the user-defined type.
You can run SHOW commands to determine which database objects reference a user-defined type. For example, the following query runs the SHOW COLUMNS command with the pipe operator (
->>) to return tables with columns of data types that include the textAGE:SHOW COLUMNS ->> SELECT "table_name", "data_type" FROM $1 WHERE "data_type" LIKE '%AGE%';
If a user-defined type is dropped and a query directly references a column of that type, the query fails. Queries that don’t directly reference the column of the dropped type run normally.
Examples¶
Use the DROP TYPE command to drop the age user-defined type: