Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
In this article
Applies to:
SQL Server
Azure SQL Database
Azure SQL Managed Instance
Removes an alias data type or a common language runtime (CLR) user-defined type from the current database.
Transact-SQL syntax conventions
DROP TYPE [ IF EXISTS ] [ schema_name. ] type_name [ ; ]
IF EXISTS
Applies to: SQL Server ( SQL Server 2016 (13.x) through current version).
Conditionally drops the type only if it already exists.
schema_name
Is the name of the schema to which the alias or user-defined type belongs.
type_name
Is the name of the alias data type or the user-defined type you want to drop.
The DROP TYPE statement will not execute when any of the following is true:
There are tables in the database that contain columns of the alias data type or the user-defined type. Information about alias or user-defined type columns can be obtained by querying the sys.columns or sys.column_type_usages catalog views.
There are computed columns, CHECK constraints, schema-bound views, and schema-bound functions whose definitions reference the alias or user-defined type. Information about these references can be obtained by querying the sys.sql_expression_dependencies catalog view.
There are functions, stored procedures, or triggers created in the database, and these routines use variables and parameters of the alias or user-defined type. Information about alias or user-defined type parameters can be obtained by querying the sys.parameters or sys.parameter_type_usages catalog views.
Requires either CONTROL permission on type_name or ALTER permission on schema_name.
The following example assumes a type named ssn
is already created in the current database.
DROP TYPE ssn ;