日期:2014-05-18  浏览次数:20618 次

BCP出错,大家进来帮忙看看
执行一个BCP语句,在SQL中如下:
declare   @Isql   as   varchar(200)
Set   @iSQL= 'bcp   "select   *   from   stn.dbo.sheet "   queryout   \\174.**.**.1\d$\UPLOAD\STN\F6SAPText\124.txt   -c   -S   174.**.**.2     -U   sa     -P   password   '
Print   @iSQL
EXEC   master..xp_cmdshell   @iSQL
结果会报错:
SQLState   =   S1000,   NativeError   =   0
Error   =   [Microsoft][ODBC   SQL   Server   Driver]Unable   to   open   BCP   host   data-file

但是我单独在Windows命令行中执行BCP语句
'bcp   "select   *   from   stn.dbo.sheet "   queryout   \\174.**.**.**\d$\UPLOAD\STN\F6SAPText\124.txt   -c   -S   servername     -U   sa     -P   password  
是没有问题的,怎么回事啊?
说明:174.**.**.1和174.**.**.2都不是本地

------解决方案--------------------
BCP host data-file
好像 只能把到处的文件保存在本机上
------解决方案--------------------
\\174.**.**.**\d$\UPLOAD\STN\F6SAPText\这个目录没有写入的权限??
------解决方案--------------------
MS 是SQL SERVER 没有写入网络共享目录的权限,可以检查一下。
------解决方案--------------------
sqlserver 运行账号有对174.**.**.1目录写入的权限?
------解决方案--------------------
我今天也遇到同樣的問題。

用 bcp ccc.tblemployee out \\pri\eis_date\temp_out.txt -w -t "| " -R -T
可以導出文件,
但是用下面的這個就導不出文件。
EXEC master..xp_cmdshell 'bcp ccc.tblemployee out \\pri\eis_date\temp_out.txt -w -t "| " -R -T '


\\pri\eis_date\ 這個共享目錄我是可以在那個機器上直接寫文件的。