7

我正在尝试使用 sqlcmd 来执行一些 SQL 脚本。

使用带有简单查询的测试命令,例如:

sqlcmd -S HOSTNAME -d MYDATABASE -Q 'SELECT Names FROM Customers'

sqlcmd 似乎没有尝试连接到服务器,因为它显示以下消息:

Sqlcmd:错误:连接失败。
SQL Native Client 未正确安装。若要更正此问题,请运行 SQL Server 安装程序。

The native client was presumably installed as part of the SQL Server setup and likely correctly. I actually get this message on any machine with SQL server installed trying to use sqlcmd so it's not a matter of the installation being corrupt.

Unfortunately the message really tells me nothing about the problem so I don't know what the real issue is. I know the SQL Native client is working properly since a vbscript was able to execute SQL queries against the database.

Is there some additional configuration needed to use sqlcmd?

4

4 回答 4

16

我有同样的错误。经过大量搜索和重新安装后,我检查了我的 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 条目。

于 2011-08-07T21:13:11.533 回答
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

于 2014-07-30T09:19:34.333 回答
1

我也遇到了MS SQL Server 2014这个错误。

Sqlcmd:错误:连接失败。SQL Native Client 未正确安装。若要更正此问题,请运行 SQL Server 安装程序。

首先,确认已安装SQL Server Native Client如MSDN上所指定,bcp.exe 和SQLCMD.exe文件应位于以下目录中。

<Install Directory>\Client SDK\ODBC\110\Tools\Binn

如果文件不存在,您可以使用ENU\x86\sqlncli.msi 或 ENU\x64\sqlncli.msi从Microsoft 下载中心下载并安装客户端。MSSQL 2014 使用 2012 客户端

完成此操作后,您应该能够毫无问题地使用 SQLCMD。

我机器上的路径环境变量包含以下条目:

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\
于 2016-02-12T12:27:57.840 回答
0

我知道 SQL Native 客户端工作正常,因为 vbscript 能够对数据库执行 SQL 查询。

不,你没有。您只知道某些客户端可以工作,但不一定是 SQL Native 客户端。

条条大路通罗马http://www.connectionstrings.com/sql-server-2008(查看Provider列表),但碰巧有一个被封锁。

只需从控制面板执行修复/修改设置,或安装另一个实例(确保已安装本机客户端),然后再次将其删除。

于 2011-02-22T20:20:24.043 回答