BCP错误“无法打开BCP主机数据文件”

时间:2016-09-13 08:22:10

标签: sql-server cmd bcp

我刚刚在我的sqlserver名称exporttable中创建了一个新表  现在我正试图推出使用cmd bcp但是得​​到以下错误:

  

SQLState = S1000,NativeError = 0错误= [Microsoft] [ODBC驱动程序13   for SQL Server]无法打开BCP主机数据文件

这是我的路径:

C:\Users\Serge>BCP Testing.bdo.Exporttable out "C:\Users\Serge\Desktop" -C -T

任何人都可以提供帮助吗?

在尝试Shnugos建议添加文件名后,我收到了这个错误:

  

SQLState = S0002,NativeError = 208错误= [Microsoft] [ODBC驱动程序13   for SQL Server] [SQL Server]无效的对象名称   'Testing.bdo.ExportTable'。 SQLState = 37000,NativeError = 11529错误   = [Microsoft] [SQL Server的ODBC驱动程序13] [SQL Server]无法确定元数据,因为每个代码路径都会导致错误;   查看其中一些错误。 -

4 个答案:

答案 0 :(得分:3)

从我犯的错误中,无法打开数据文件:

C:\Users\Serge>BCP Testing.bdo.Exporttable out "C:\Users\Serge\Desktop\MyFile.txt" -C -T

我认为,您必须在\Desktop后面添加一个文件名。 桌面是现有目录,无法以文件形式打开...

并且 - 顺便说一下 - 可能需要添加-S Servername ...

更新

找到此here

  

每当我收到此消息时,都会因为以下三种情况之一:

     

1)路径/文件名不正确(检查您的输入/拼写)

     

2)该文件不存在。 (确保文件在您期望的位置   是)

     

3)该文件已被其他应用程序打开。 (关闭其他应用程序   发布文件)

     

对于1)和2) - 记住路径是相对于bcp的位置   执行。确保bcp.exe可以访问它的文件/路径   上下文。

     

/肯尼斯

答案 1 :(得分:2)

我知道这是旧的,但您的架构似乎也拼写错误。 C:\Users\Serge>BCP 测试。bdo。可导出“C:\Users\Serge\Desktop” -C -T

s/b

C:\Users\Serge>BCP 测试。dbo。可导出“C:\Users\Serge\Desktop”-C -T

答案 2 :(得分:1)

运行:EXEC master..xp_cmdshell'DIR C:\ Users \ Serge \ Desktop',这将显示您是否有权访问该路径。

请记住,如果您正在远程或通过网络访问SQL,则输出即。 “ C:\ Users \ Serge \ Desktop”将是SQL Server上的C驱动器,而不是您正在使用的远程PC。

答案 3 :(得分:0)

如果您通过xp_cmdshell运行BCP,请运行以下命令 - > xp_cmdshell' whoami&#39 ;; 走 - 确保您获得的任何用户价值都可以完全访问相关文件