新库是直接复制的模板库
执行存储过程时报如下错
System.IO.FileLoadException: 未能加载文件或程序集“csharpclslibforsqlserver, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。发生与安全有关的错误。 (异常来自 HRESULT:0x8013150A)
————————————————————————————————————————————————————————————————————————
度娘给的方案是:
在还原数据库之后,我们可以将数据库的OWNER设置成SA.
exec sp_changedbowner 'sa'
再调用存储过程就是成功的.
————————————————————————————————————————————————————————————————————————
然后就开始根据错误提示来找问题!
首先是服务器可能资源不足, 这个问题可以排除,那么会不会是服务器不信任该程序集呢
在相看数据库的属性时,在选项处看到有一属性为 可信 的值是 False。那么会不会是这个问题引起的呢?
结果将数据库设置可信为true后果然问题得到了解决
——————————————————————————————————————————————————————————
1. exec sp_configure 'show advanced options', '1';
Go
reconfigure;
go
exec sp_configure 'clr enabled', '1'
go
reconfigure; --如果执行失败,就用这个RECONFIGURE WITH OVERRIDE;
exec sp_configure 'show advanced options', '1';
go
2.查SID在sys.databases 和sys.server_principals是否一致
SELECT * FROM sys.server_principals;
SELECT * FROM sys.sysdatabases ;
3.查看程序集是否存在
SELECT * FROM sys.assemblies;SELECT * FROM sys.assembly_files;
4. 修改为ON
ALTER DATABASE tablename SET TRUSTWORTHY on;
5.注意所有者
exec sp_changedbowner 'sa'