DROP ASSEMBLY (Transact-SQL)

適用対象: SQL ServerAzure SQL Managed Instance

現在のデータベースから、アセンブリとそれに関連するすべてのファイルを削除します。 アセンブリは CREATE ASSEMBLY を使って作成し、ALTER ASSEMBLY を使って変更します。

Transact-SQL 構文表記規則

構文

DROP ASSEMBLY [ IF EXISTS ] assembly_name [ ,...n ]  
[ WITH NO DEPENDENTS ]  
[ ; ]  

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

IF EXISTS
適用対象: SQL Server (SQL Server 2016 (13.x) から現在のバージョンまで)。

条件付きでは既に存在する場合にのみ、アセンブリを削除します。

assembly_name
削除するアセンブリの名前です。

WITH NO DEPENDENTS
指定した場合、assembly_name だけが削除され、アセンブリで参照される依存アセンブリは削除されません。 指定しない場合、DROP ASSEMBLY では assembly_name とすべての依存アセンブリが削除されます。

解説

アセンブリを削除すると、データベースからアセンブリと、ソース コードやデバッグ ファイルなどのアセンブリに関連するファイルが削除されます。

WITH NO DEPENDENTS を指定しない場合、DROP ASSEMBLY では assembly_name とすべての依存アセンブリが削除されます。 依存アセンブリの削除に失敗した場合、DROP ASSEMBLY ではエラーが返されます。

アセンブリが、データベースに存在する他のアセンブリによって参照されているか、現在のデータベースの共通言語ランタイム (CLR) 関数、プロシージャ、トリガー、ユーザー定義型、または集計で使用されている場合、DROP ASSEMBLY ではエラーが返されます。

DROP ASSEMBLY は、アセンブリを参照する現在実行中のコードには影響を与えません。 ただし、DROP ASSEMBLY を実行した後では、アセンブリ コードの呼び出しは失敗します。

アクセス許可

アセンブリの所有権、またはアセンブリに対する CONTROL 権限が必要です。

次の例では、アセンブリ HelloWorld が SQL Server のインスタンスに既に作成されていることを前提としています。

DROP ASSEMBLY Helloworld ;  

参照

CREATE ASSEMBLY (Transact-SQL)
ALTER ASSEMBLY (Transact-SQL)
EVENTDATA (Transact-SQL)
アセンブリについての情報の取得