You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows下SQL Server添加CLR程序集的文件权限问题排查

SQL Server添加CLR正则程序集遇到的权限与文件读取问题

我正在为公司项目在SQL Server中添加包含正则功能的CLR程序集,这是我首次添加用户定义函数,参考了相关指南。

执行以下语句时:

CREATE ASSEMBLY DbRegex AUTHORIZATION [dbo] 
FROM '..\CLR_UDF_DLLs\DbRegex.dll' 
WITH PERMISSION_SET = SAFE

出现错误:

CREATE ASSEMBLY failed because it could not read from the physical file '..\CLR_UDF_DLLs\DbRegex.dll': 50

我尝试通过设置签名解决问题,执行语句:

USE master
GO

CREATE ASYMMETRIC KEY ClrSign FROM EXECUTABLE FILE = 'C:\Repos\Dev\Setup\ProgramData\Database\CLR-UDF-DLLs\DbRegex.dll';
GO

又出现错误:

The certificate, asymmetric key, or private key file is not valid or does not exist; or you do not have permissions for it

为获取权限,我查阅了SQL Server权限配置相关文档,但文档中提及的文件不存在,且在权限配置对话框中无法选择可给SQL Server添加权限的角色或用户。

请问添加该程序集时我遗漏或做错了什么步骤?

环境信息:

  • 操作系统:Windows 11
  • 数据库工具:Microsoft SQL Server Management Studio 20.2
  • 开发工具:Microsoft Visual Studio Community 2022
  • 服务器状态:以数据库引擎运行,附带SSMS登录界面截图、DbRegex.dll权限截图

内容的提问来源于stack exchange,提问作者MaxH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 21:22:43