我正在使用 SSDT 数据库项目创建数据库并部署为 dacpac。.NET 程序集是项目的一部分,在部署期间安装失败并显示以下错误消息:
为程序集“xyz”创建程序集失败,因为程序集“xyz”未获得 PERMISSION_SET = UNSAFE 的授权。当以下任一情况为真时,程序集被授权:数据库所有者 (DBO) 具有 UNSAFE ASSEMBLY 权限并且数据库具有 TRUSTWORTHY 数据库属性;或者程序集使用证书或非对称密钥签名,该密钥具有相应的登录名并具有 UNSAFE ASSEMBLY 权限。
dbo 是“sa”。我已经进入项目属性并检查了杂项选项卡下的“可信赖”。但是,我仍然收到错误,并且当我运行时
select name, is_trustworthy_on from sys.databases
我看到is_trustworthy_on
是0。这个设置似乎没有效果。搜索后,我发现以下内容:
某些数据库选项(例如 TRUSTWORTHY、DB_CHAINING 和 HONOR_BROKER_PRIORITY)不能作为部署过程的一部分进行调整。
来自http://msdn.microsoft.com/en-us/library/ee210569.aspx
调整这个词意味着改变了我。这是一个新的数据库。但是,如果即使对于新数据库也是如此,为什么对话框中存在该设置?我是否需要将此脚本作为预部署的一部分?