首页 > 解决方案 > 从 SQL Server 中删除所有程序集

问题描述

问题很简单,但以防万一我会解释它。

有没有办法删除 Microsoft SQL Server 中的所有程序集?

我知道有一种方法可以一次删除它们

DROP ASSEMBLY ['assembly_name'];

标签: sql-server

解决方案


我从未使用过程序集,但它们应该像 SQL SERVER 上的其他所有东西一样位于 sys 内的结构中。我通常使用与此类似的代码来构建大量命令。请注意,在我的环境中,所有与程序集相关的表都是空的,所以我不能说我用 select 选择的表和列是否正确,你需要自己弄清楚。

declare @cmd NVARCHAR(MAX)
set @cmd=''
select 
@cmd=@cmd+ 'DROP ASSEMBLY [''' + am.assembly_class +'''];'+CHAR(13)
 from sys.assembly_modules am

 PRINT @cmd

 --Copy and paste the Messages content from SQL Server Management studio to a new query or uncomment the row below to execute
 --EXEC sp_executesql @cmd

推荐阅读