您好我尝试使用CLR集成从sql server访问外部exe。
我设置了我的数据库TRUSTWORTHY ON
和PERMISSION_SET = EXTERNAL_ACCESS
,但收到了以下错误
Msg 6522, Level 16, State 1, Procedure hello, Line 0
A .NET Framework error occurred during execution of user defined routine or aggregate 'hello':
System.Security.SecurityException: Request failed.
System.Security.SecurityException:
at HelloWorldProc.HelloWorld()
helloworld.cs代码:
using System;
using System.Data;
using Microsoft.SqlServer.Server;
using System.Data.SqlTypes;
using System.Diagnostics;
public class HelloWorldProc
{
[Microsoft.SqlServer.Server.SqlProcedure]
public static void HelloWorld()
{
SqlContext.Pipe.Send("Hello world!\n");
Process.Start(@"D:\Raja\trg.exe");
}
}
答案 0 :(得分:0)
我得到了此错误的解决方案,我们希望在管理员中设置 SQL Server服务登录。
控制面板 - >管理工具 - >服务强>
查找MSSQLServer服务将其“登录身份”从本地系统更改为“管理员”。
现在我可以通过SQL Server Procedure打开doc这个词。