无法通过sqlcmd

时间:2016-07-24 07:22:00

标签: sql-server database powershell sqlcmd smss

我目前正在学习SQL Server,但在使用sqlcmd连接到本地数据库时遇到问题。

当我在Powershell中输入以下内容时:

sqlcmd -S "(localdb)\mssqllocaldb"

我收到以下错误消息:

  

Sqlcmd:错误:用于SQL Server的Microsoft ODBC驱动程序13:SQL Server网络接口:系统找不到指定的文件。
  Sqlcmd:错误:SQL Server的Microsoft ODBC驱动程序13:登录超时已过期   Sqlcmd:错误:SQL Server的Microsoft ODBC驱动程序13:建立与SQL Server的连接时发生了与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。检查实例名称是否正确以及SQL Server是否配置为允许远程连接。有关详细信息,请参阅SQL Server联机丛书。

如果我使用SQL Server Management Studio,我可以连接到本地数据库。如果我使用实例名称管道,我也可以连接到本地数据库。

我已全面安装Windows 10 x64,Visual Studio社区和SQL Server Management Studio 2016.

3 个答案:

答案 0 :(得分:13)

ODBC驱动器13中有driver bug。安装ODBC驱动程序13.1更新将解决此问题。

你可以download the driver here

之后,您应该可以在cmd或powershell中使用:

sqlcmd -S "(localdb)\MSSQLLocalDB" -i C:\path\to\file.sql

答案 1 :(得分:2)

我刚收到此错误,this article为我解决了问题。从它所说的位置开始阅读" Visual Studio 2017&径处理"

  

实际发生错误消息是因为我的路径变量指向较旧版本的sqlcmd工具....适用于我所有SQL Express引擎的工具位于:

     
    

C:\ Program Files \ Microsoft SQL Server \ 110 \ Tools \ Binn \

  

使用该目录中的sqlcmd为我工作。

答案 2 :(得分:1)

sqlcmd -S ".\mssqllocaldb"

sqlcmd -S ".\mssqllocaldb -uYOUR_User -pYOUR_PASSWORD"