2011-10-31 50 views
1

我正在使用SQL Server 2008,并且在尝试执行BULK INSERT访问网络路径时出现Access Denied错误,格式为:\\network_ip_address\Localdiskname$\filename_with_extenstion使用UNC路径时访问被拒绝错误

BULK 
INSERT TableName 
FROM '\\10.1.10.100\d$\Temp.csv' 

我该如何正确编写查询?如何在查询中指定网络认证凭证,如用户名和密码?

回答

0

这里有两件事情 -

有可能是在实际运行BULK INSERT命令权限问题。确保您正在运行批量插入操作的帐户具有bulkadmin的固定服务器角色或批准允许批量插入操作发生的管理批量操作权限。

也适用于UNC路径 - 您无法在查询中指定网络身份验证凭据。这将作为运行SQL的服务帐户访问该路径。

我会核实:

  1. 运行SQL Server的不是本地系统的帐户,它可以访问网络资源
  2. 验证为SQL在其下运行该帐户存在权限有权对网络资源。

This article in SQL Server books online告诉你所有你需要知道的批量操作,并有权限和网络安全部分。