SQL Server批量插入访问问题

Sea*_*ean 5 sql-server

我试图在SQL Server上执行批量插入:

BULK INSERT SampleData FROM '<UNC_Path>'
WITH ( FIELDTERMINATOR = '|', ROWTERMINATOR = '\n' )
Run Code Online (Sandbox Code Playgroud)

这适用于我的本地数据库,但当我尝试对我们的开发服务器运行时,我收到以下错误:

"无法批量加载,因为无法打开文件"...".操作系统错误代码5(访问被拒绝.)

我的帐户和SQL服务帐户都可以访问该路径.我的网络管理员正在与代表合作以使其工作,但是已经没有想法了.有没有人在这里见过这个问题?

And*_*mar 4

引用雷穆斯·鲁萨努的话:

您的客户端通过 SQL Server 进行身份验证,然后 SQL Server 模拟该客户端并尝试访问 UNC 路径。这就是委派,并且是隐式禁止的。您必须采取明确的步骤来启用 SQL Server 服务帐户的约束委派。请参阅这篇文章解释详细信息: http://msdn.microsoft.com/en-us/library/ms998355.aspx 该文章显示了访问后端数据库的 ASP 服务的约束委派,但在您的情况下,它将是中间的 SQL Server 访问后端 UNC 共享。

作为替代方案,您可以使用 Sql 身份验证连接到 Sql Server。这将导致 Sql Server 访问其自己帐户下的共享。

并且您确定批量插入是在Sql Server帐户下执行的吗?如果是批处理作业,可能是在 Sql Server Agent 帐户下执行的。默认情况下,这是系统\网络服务。将其更改为有权访问共享的域用户。