ct_connect(): directory service layer: internal directory control&
(2012-12-13 16:01:32)
标签:
bcp命令错误establishingconnectisqlserver命令错误it |
分类: 数据库学习 |
一、错误描述
今天测试SQL
Server的BCP命令,当运行“exec master..xp_cmdshell 'bcp
"pTest.dbo.transinfo" out c:\bu.txt -S"(local)"
-U"sa" -P"sa" -c'”时,报如下错误:
BCP的语法肯定是没有问题的,但是为什么运行时不能成功?在网上仔细搜查资料,终于找到BCP出错的问题所在。
我的系统中之前安装了Sybase数据库,而SQLSERVER数据库是在Sybase之后装的,这样就导致了SQLSERVER对应的环境变量在Sybase之后了,在执行BCP命令时,系统首先找到的BCP是Sybase的BCP,而不是SQLSERVER的。用Sybase的BCP往SQLSERVER中导数据当然会有问题。
在PATH环境变量中将所有涉及SQL
Server的环境变量提到Sybase之前,这样就可以了。看来windows的环境变量也有先后优先级之分,在之后的应用中得引以注意。
CTLIB Message: -
L6/O8/S5/N3/5/0:
ct_connect(): directory service layer:
internal directory control layer error: Requested server name not
found.
Establishing connection
failed.
二、分析原因
三、解决方法