テーブルの削除 (データベース エンジン)

対象者: SQL Server 2016 (13.x) および以降のバージョン Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Database in Microsoft Fabric

SQL Server Management Studio または Transact-SQL を使って、SQL Server のデータベースからテーブルを削除 (ドロップ) できます。

Caution

テーブルの削除については、十分に検討してください。 テーブルを参照するクエリ、ビュー、ユーザー定義関数、ストアド プロシージャ、またはプログラムがある場合は、テーブルを削除すると、各オブジェクトが無効になります。

制限事項と制約事項

  • FOREIGN KEY 制約によって参照されているテーブルを削除することはできません。 まず、参照している FOREIGN KEY 制約または参照テーブルを削除する必要があります。 参照元のテーブルと主キーを保持するテーブルの両方が同じ DROP TABLE ステートメントで削除されている場合は、最初に参照テーブルを一覧表示する必要があります。

  • テーブルを削除すると、そのテーブルのルールや既定値はバインドを失い、そのテーブルに関係付けられている制約やトリガーも自動的に削除されます。 テーブルを再作成する場合は、適切なルールや既定値を再バインドし、トリガーを再作成し、必要なすべての制約を追加する必要があります。

  • FILESTREAM 属性が指定されている varbinary (max) 列を含むテーブルを削除しても、ファイル システムに保存されているデータは削除されません。

  • DROP TABLE と CREATE TABLE は、同じバッチ内の同じテーブルで実行しないでください。 そうしないと、予期しないエラーが発生する可能性があります。

  • 削除されたテーブルを参照しているすべてのビューとストアド プロシージャを、明示的に削除するか、変更してテーブルへの参照を削除する必要があります。

Permissions

テーブルが属するスキーマに対する ALTER 権限、テーブルに対する CONTROL 権限、または db_ddladmin 固定データベース ロールのメンバーシップが必要です。

SQL Server Management Studio を使用する

データベースからテーブルを削除するには

  1. オブジェクト エクスプローラーで、削除するテーブルを選択します。

  2. テーブルを右クリックし、ショートカット メニューの [削除] をクリックします。

  3. 削除の確認を要求するメッセージ ボックスが表示されます。 [ はい] をクリックします。

    Note

    テーブルを削除すると、テーブルへのリレーションシップが自動的に削除されます。

Transact-SQL の使用

クエリ エディターでテーブルを削除するには

  1. オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。

  2. [標準] ツール バーの [新しいクエリ] をクリックします。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。

    DROP TABLE dbo.PurchaseOrderDetail;  
    
    

詳細については、DROP TABLE (Transact-SQL) を参照してください。