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.
Applies to:
SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL analytics endpoint in Microsoft Fabric
Warehouse in Microsoft Fabric
Removes a schema from the database.
Transact-SQL syntax conventions
Syntax
-- Syntax for SQL Server and Azure SQL Database
DROP SCHEMA [ IF EXISTS ] schema_name
-- Syntax for Azure Synapse Analytics and Parallel Data Warehouse
DROP SCHEMA schema_name
Arguments
IF EXISTS
Applies to: SQL Server ( SQL Server 2016 (13.x) through current version).
Conditionally drops the schema only if it already exists.
schema_name
Is the name by which the schema is known within the database.
Remarks
The schema that is being dropped must not contain any objects. If the schema contains objects, the DROP statement fails.
Information about schemas is visible in the sys.schemas catalog view.
Note
Schemas aren't equivalent to database users. Use System catalog views to identify any differences between database users and schemas.
Permissions
Requires CONTROL permission on the schema or ALTER ANY SCHEMA permission on the database.
Examples
The following example starts with a single CREATE SCHEMA
statement. The statement creates the schema Sprockets
that is owned by Krishna
and a table Sprockets.NineProngs
, and then grants SELECT
permission to Anibal
and denies SELECT
permission to Hung-Fu
.
CREATE SCHEMA Sprockets AUTHORIZATION Krishna
CREATE TABLE NineProngs (source INT, cost INT, partnumber INT)
GRANT SELECT TO Anibal
DENY SELECT TO [Hung-Fu];
GO
The following statements drop the schema. Note that you must first drop the table that is contained by the schema.
DROP TABLE Sprockets.NineProngs;
DROP SCHEMA Sprockets;
GO
See Also
CREATE SCHEMA (Transact-SQL)
ALTER SCHEMA (Transact-SQL)
DROP SCHEMA (Transact-SQL)
EVENTDATA (Transact-SQL)