如何在JetBrains DataGrip中连接到MS SQL Server Express?

Yur*_*riy 8 sql-server connection-string jdbc intellij-idea datagrip

我正在尝试设置新工具JetBrains:DataGrip使用我的本地安装MS SQL Server 2014 Express.我花了一些时间试图将ms连接字符串"转换"为jdbc,但没有运气.我可以用连接MS SQL Server 2014 management Studio.

所以这是我的连接字符串:

"Data Source=MyPCName\MySQLInstanceName;Initial Catalog=MyDataBaseNameA3D;Integrated Security=True;"
Run Code Online (Sandbox Code Playgroud)

我最好的猜测基于msdn示例:

jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]
Run Code Online (Sandbox Code Playgroud)

MSDN:使用JDBC驱动程序连接到SQL Server.构建连接URL

jdbc:sqlserver://MyPCName\MySQLInstanceName:1433;databaseName=MyDataBaseNameA3D;integratedSecurity=true;
Run Code Online (Sandbox Code Playgroud)

有没有人解决过这样的问题,也许可以指导我完成设置步骤?

否则我只是放弃这个工具.我浪费了足够的时间在一些非常简单的事情上.

And*_*rey 16

DataGrip为每个jdbc驱动程序预定义了jdbc url模板.对于MS SQL Server,它有两个驱动程序:

  • 带有模板url连接字符串的SQL Server(Microsoft驱动程序): jdbc:sqlserver://host:port;databaseName=<your db name>

  • 带有模板url连接字符串的SQL Server(jTDS驱动程序): jdbc:jtds:sqlserver://host:port/<your db name>

在这两种情况下,数据库的名称都是可选的.如果设置相应的连接参数,也会自动填充这些URL模板.填写连接设置后,DataGrip 2016也可以完成: 数据库连接设置

可能是你的网址是正确的,但你得到tcp连接错误.在这种情况下,请确保如果通过TCP端口连接,SQL Server将配置为接受指定IP地址上的远程连接,并侦听指定端口上的tcp连接(或参见SQL Server文档).

如果您通过命名实例进行连接,请确保在连接设置中指定实例名称并省略指定端口(如果它是Sql Server的"快速"版本,则实例名称可以是SQLEXPRESS).

UPD:另请参阅DataGrip博客上的将DataGrip 连接到MS SQL Server教程.

  • 谢谢安德烈!在Sql Server Configuration Manager中启用了TCP / IP协议的服务器,一切进行得很顺利! (2认同)
  • 我必须激活提供的第一个链接中提到的名为_SQLBrowser_的服务。谢谢 ! (2认同)