CREATE ASSEMBLY SQLCLRTest
FROM N'C:\Users\Administrator\Desktop\SqlServerProject.dll'
WITH PERMISSION_SET = EXTERNAL_ACCESS
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using Microsoft.SqlServer.Server;
using System.Xml;
using System.IO;
using System.Net;
using System.Text;
using System.Threading;
public partial class UserDefinedFunctions {
[Microsoft.SqlServer.Server.SqlFunction]
public static SqlString TESTFunction() {
// 在此处放置代码
return new SqlString( "Hello" );
}
执行创建程序集时报错提示
消息 10327,级别 14,状态 1,第 1 行
针对程序集 'SqlServerProject' 的 CREATE ASSEMBLY 失败,因为程序集 'SqlServerProject' 未获授权,不满足 PERMISSION_SET = EXTERNAL_ACCESS。满足以下两个条件之一时将给程序集授权: 数据库所有者(DBO)拥有 EXTERNAL ACCESS ASSEMBLY 权限,且数据库具有 TRUSTWORTHY 数据库属性;或者,程序集已使用其对应登录名具有 EXTERNAL ACCESS ASSEMBLY 权限的证书或非对称密钥加以签名。
已经执行过
alter database [master] set TRUSTWORTHY on
EXEC sp_changedbowner 'sa'
也执行过
--启动CLR
exec sp_configure 'show advanced options', '1';
go
reconfigure;
go
exec sp_configure 'clr enabled', '1'
go
reconfigure;
exec sp_configure 'show advanced options', '1';
go
8 个解决方案
#1
要创建PERMISSION_SET = EXTERNAL_ACCESS这样的
因为还要访问网络
因为还要访问网络
#2
黛玉MM
又来啦
欢迎
又来啦
欢迎
#3
黛玉MM顶下
有没有分
有请石头
有没有分
有请石头
#4
自己顶下下[img=http://tstring.com.cn/i/xy2/17.gif]http://tstring.com.cn/i/xy2/17.gif[/img]
#5
我也遇到相同的问题了,帮顶一下吧,等待高人解答!再去百度上找一找。
#6
找到答案了,可惜结帖了。
#7
附上解决办法
--解决办法
use master
GRANT EXTERNAL ACCESS ASSEMBLY TO Air_User
#8
还是没用
#1
要创建PERMISSION_SET = EXTERNAL_ACCESS这样的
因为还要访问网络
因为还要访问网络
#2
黛玉MM
又来啦
欢迎
又来啦
欢迎
#3
黛玉MM顶下
有没有分
有请石头
有没有分
有请石头
#4
自己顶下下[img=http://tstring.com.cn/i/xy2/17.gif]http://tstring.com.cn/i/xy2/17.gif[/img]
#5
我也遇到相同的问题了,帮顶一下吧,等待高人解答!再去百度上找一找。
#6
找到答案了,可惜结帖了。
#7
附上解决办法
--解决办法
use master
GRANT EXTERNAL ACCESS ASSEMBLY TO Air_User
#8
还是没用