下面,您将注意到我尝试从Microsoft SQL Server 2008的64位Program Files文件夹中调用的一些Windows命令提示符命令
C:\Program Files\Microsoft SQL Server\100\Tools\Binn>SQLCMD -S "SQLI2B2" -d
"I2B2_CRC-DEV" -i "C:\SVN\ONT\SQL SERVER\DX_SQLSERVER.sql" -E
HResult 0x2746,Level 16,State 1 TCP Provider:现有连接 被远程主机强行关闭。
Sqlcmd:错误:Microsoft SQL Server Native Client 10.0:通信 链接失败。
c:\ Program Files \ Microsoft SQL Server \ 100 \ Tools \ Binn>
现在,我连接的数据库(服务器)是SQL Server 2008.我在" Microsoft SQL Server"下面有几个目录。夹。 90,100,110和120.只有100和110具有.\Tools\Binn\SQLCMD.EXE
文件。我注意到\\Control Panel\All Control Panel Items\Administrative Tools\Data Sources (ODBC)\Drivers\
中的以下驱动程序,因此我不知道客户端驱动程序是否与我的服务器版本相符。
Name Version
SQL Server 6.01.7601.17514
SQL Server Native Client 10.0 2009.100.1600.01
SQL Server Native Client 11.0 2011.110.3000.00
命令中的-E
意味着使用Windows身份验证,而不是SQL Server身份验证(使用实际的用户和密码)。
可能导致此错误的原因是什么,可以修复它?
注意:
这是在Windows 7上找到的。以下解决方案仅适用于早期的操作系统。
答案 0 :(得分:1)
第一个错误:
TCP提供商:远程强制关闭现有连接 主机。
通讯链接失败
将运行较小的文件,但如果文件太大,您仍会收到此异常。我能找到的唯一解决方案是将包含T-SQL命令的文件分解为多个较小的文件。
第二个错误:
Sqlcmd:错误:Microsoft SQL Server Native Client 10.0:通信 链接失败。
" Binn"中必须有其他文件。 SQLCMD.EXE除了可执行文件本身之外还需要运行的文件夹。要么附加到现有的SYSTEM" PATH"环境变量或添加新的用户"路径" \\Control Panel\All Control Panel Items\System\Advanced system settings\Environment Variables\
中的环境变量。
Variable name: PATH
Variable value: C:\Program Files\Microsoft SQL Server\100\Tools\Binn\