添加包含 Sql CLR 模块的 .dll

用 .Net 语言编写的过程,函数,触发器和类型存储在 .dll 文件中。创建包含 CLR 过程的 .dll 文件后,应将其导入 SQL Server:

CREATE ASSEMBLY MyLibrary
FROM 'C:\lib\MyStoredProcedures.dll'
    WITH PERMISSION_SET = EXTERNAL_ACCESS

默认情况下,PERMISSION_SET 是安全的,这意味着 .dll 中的代码不需要访问外部资源(例如文件,网站,其他服务器)的权限,也不会使用可以访问内存的本机代码。

PERMISSION_SET = EXTERNAL_ACCESS 用于标记包含将访问外部资源的代码的程序集。

你可以在 sys.assemblies 视图中找到有关当前 CLR 程序集文件的信息:

SELECT *
FROM sys.assemblies asms
WHERE is_user_defined = 1