4

我的机器是macbook pro。但是,我公司的数据在 SQL Server 中。为了访问它,我需要使用 VMWare Fusion 在 Windows XP 上运行 SQL Server Management Studio 2008。

当我尝试运行批量导入(通过 SQLAuthority.com 的说明)时,我收到此错误:

Msg 4861, Level 16, State 1, Line 1
Cannot bulk load because the file "H:\test.CSV" could not be opened. Operating system error code 3(The system cannot find the path specified.).

我正在处理 3 个不同的文件位置,但它们都不起作用。

  1. 我的 Mac 存储 - “/Users/Admin/Documents/test.CSV”
  2. 我的 Windows XP 存储 - 我的“C:”驱动器。"C:\test.CSV"
  3. 我公司的网络位置 - 通过 Windows XP 映射到“H:”驱动器。“H:\test.CSV”

将脚本更改为指向所有这些位置会提供相同的错误消息。

关于如何克服这个问题的任何想法?目前,我唯一的选择是使用 SQL Server 导入/导出工具,但设置每次导入都需要一段时间。脚本更快。

4

2 回答 2

14

Abulk insert从服务器运行。所以它无法到达您的本地磁盘。

服务器使用“SQL Server”Windows 服务使用的帐户。该帐户通常没有任何映射驱动器。

尝试使用全名,例如:

\\server\share\test.csv

可能的其他解决方案:

  • 要求 DBA 在服务器上打开一个共享以进行导入
  • 要求 DBA 将 CSV 文件放在服务器上的磁盘上
  • 询问 DBA 哪个帐户用于 SQL Server 服务。如果它是域帐户,您可以授予该帐户对网络共享的读取权限。
于 2011-12-28T17:01:36.333 回答
0

我也遇到了这个错误。

在我的情况下,解决方案是将 T-SQL 中的路径从共享更改为实际目录:\\server\share$\file -> drive:\folder\file.

罪魁祸首最终是 VMWare 的问题,这导致服务器无法通过某些网络共享进行身份验证。

于 2014-10-15T21:31:41.720 回答