DROP SCHEMA (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 的 SQL 端點分析 Microsoft Fabric 的倉儲
從資料庫中移除結構描述。
語法
-- 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
引數
IF EXISTS
適用於:SQL Server (SQL Server 2016 (13.x) 到最新版本)。
只有在結構描述已存在時,才能有條件地將其卸除。
schema_name
這是資料庫中結構描述的識別名稱。
備註
要卸除的結構描述不能包含任何物件。 如果該結構描述包含物件,DROP 陳述式會失敗。
您可以在 sys.schemas 目錄檢視中,看到有關結構描述的資訊。
注意 從 SQL Server 2005 開始,結構描述的行為已經變更。 結果是,假設結構描述相當於資料庫使用者的程式碼可能不會傳回正確的結果。 不應該在曾經使用下列任何一個 DDL 陳述式的資料庫中使用舊的目錄檢視 (包括 sysobjects):CREATE SCHEMA、ALTER SCHEMA、DROP SCHEMA、CREATE USER、ALTER USER、DROP USER、CREATE ROLE、ALTER ROLE、DROP ROLE、CREATE APPROLE、ALTER APPROLE、DROP APPROLE、ALTER AUTHORIZATION。 在此類資料庫中,必須改用新的目錄檢視。 新的目錄檢視會考量 SQL Server 2005 中所導入的主體和結構描述的分隔。 如需目錄檢視的詳細資訊,請參閱目錄檢視 (Transact-SQL)。
權限
需要結構描述的 CONTROL 權限或資料庫的 ALTER ANY SCHEMA 權限。
範例
下列範例是從單一 CREATE SCHEMA
陳述式開始。 這個陳述式會建立結構描述 Sprockets
(由 Krishna
擁有) 和資料表 Sprockets.NineProngs
,然後將 SELECT
權限授與 Anibal
,並拒絕將 SELECT
權限授與 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
下列陳述式會卸除該結構描述。 請注意,您必須先卸除該結構描述包含的資料表。
DROP TABLE Sprockets.NineProngs;
DROP SCHEMA Sprockets;
GO
另請參閱
CREATE SCHEMA (Transact-SQL)
ALTER SCHEMA (Transact-SQL)
DROP SCHEMA (Transact-SQL)
EVENTDATA (Transact-SQL)