DROP SCHEMA (Transact-SQL)

適用于: Microsoft Fabric 中 Microsoft Fabric 倉儲中的 SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) SQL 分析端點

從資料庫中移除結構描述。

Transact-SQL 語法慣例

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  

注意

若要檢視 SQL Server 2014 (12.x) 和舊版的 Transact-SQL 語法,請參閱 舊版檔

引數

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)