次の方法で共有


ドロップスキーマ (Transact-SQL)

Applies to:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric の SQL 分析エンドポイントMicrosoft Fabric のウェアハウス

データベースからスキーマを削除します。

Transact-SQL 構文表記規則

構文

-- 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 (SQL Server 2016 (13.x) から現在のバージョンまで)。

条件付きでは既に存在する場合にのみ、スキーマを削除します。

schema_name
データベースで認識されるスキーマの名前を指定します。

注釈

削除するスキーマは、オブジェクトが含まれていないスキーマであることが必要です。 オブジェクトがスキーマに含まれている場合、DROP ステートメントは失敗します。

スキーマに関する情報は、sys.schemas カタログ ビューで確認できます。

スキーマは、データベース ユーザーと同等ではありません。 システム カタログ ビューを使用して、データベース ユーザーとスキーマの違いを特定します。

アクセス許可

スキーマに対する 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)
スキーマの変更 (Transact-SQL)
ドロップスキーマ (Transact-SQL)
イベントデータ (Transact-SQL)