我正在尝试使用sqlcmd来执行一些SQL脚本。
使用带有简单查询的测试命令,如:
sqlcmd -S HOSTNAME -d MYDATABASE -Q 'SELECT Names FROM Customers'
sqlcmd似乎没有尝试连接到服务器,因为它显示以下消息:
Sqlcmd:错误:连接失败。
未安装SQL Native Client 正确。要更正此问题,请运行SQL 服务器设置。
本机客户端可能是作为SQL Server设置的一部分安装的,可能是正确的。我实际上在安装了SQL服务器的任何计算机上都尝试使用sqlcmd来获取此消息,因此这不是安装损坏的问题。
不幸的是,这条消息确实没有告诉我这个问题,所以我不知道真正的问题是什么。我知道SQL Native客户端正常工作,因为vbscript能够对数据库执行SQL查询。
是否需要使用sqlcmd进行其他配置?
答案 0 :(得分:15)
我有同样的错误。经过大量的搜索和重新安装后,我检查了我的PATH是否有无关的内容。由于我所使用的软件已通过MSDE,2005 Express和现在的2008 Express R2,我的PATH声明中包含以下条目:
c:\ Program Files \ Microsoft SQL Server \ 80 \ Tools \ Binn \; C:\ Program Files \ Microsoft SQL Server \ 90 \ Tools \ binn \; c:\ Program Files \ Microsoft SQL Server \ 100 \ Tools \ BINN \
我删除了80和90条目并停止接收错误。我测试过,2005 Express的安装仍然没有问题地响应SQLCMD条目。
答案 1 :(得分:3)
运行命令sqlcmd
时遇到此错误。为了解决这个问题,我删除了PATH
环境变量的不必要部分,并插入了以下内容:
C:\Program Files\Microsoft SQL Server\110\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\
此PATH适用于SQL Server 2012
答案 2 :(得分:1)
我也在 MS SQL Server 2014 中收到此错误。
Sqlcmd:错误:连接失败。未安装SQL Native Client 正确。要更正此问题,请运行SQL Server安装程序。
首先,确认已安装 SQL Server Native Client 。根据{{3}}的规定,bcp.exe和 SQLCMD.exe 文件应位于以下目录中。
<Install Directory>\Client SDK\ODBC\110\Tools\Binn
如果文件不存在,您可以使用 ENU \ x86 \ sqlncli.msi或ENU \ x64 \ sqlncli.msi从MSDN下载并安装客户端 即可。 MSSQL 2014使用2012客户端
完成此操作后,您应该可以毫无问题地使用SQLCM。
我的机器上的路径环境变量包含以下条目:
C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn
C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\ManagementStudio\
C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\
C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\
答案 3 :(得分:0)
我知道SQL Native客户端正常工作,因为vbscript能够对数据库执行SQL查询。
不,不。您只知道SOME客户端可以工作,但不一定是SQL Native客户端。
所有道路都通往罗马http://www.connectionstrings.com/sql-server-2008(查看提供商列表),但其中一条恰好被阻止。
只需从控制面板执行修复/修改设置,或安装另一个实例(确保安装了Native客户端),然后再将其删除。