【问题标题】:Cannot connect to SQL Server express 2012 from Eclipse and JDBC无法从 Eclipse 和 JDBC 连接到 SQL Server express 2012
【发布时间】:2014-10-11 20:05:22
【问题描述】:

我尝试连接到安装在我自己机器上的 SQL Server express 2012。 在 Ms SQL name 的属性中是:BGHFVUI535V2\SQLEXPRESS

在 Java 中我有:

try
{
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

    databaseName = "dblfa1;integratedSecurity=true";
    String url = "jdbc:sqlserver://BGHFVUI535V2\SQLEXPRESS;user=mysa;password=mypsw;databaseName=dbmy";
    Connection con = DriverManager.getConnection(url);

}
catch (Exception e)
{
    e.printStackTrace();
}

我得到了这个例外:

com.microsoft.sqlserver.jdbc.SQLServerException: The connection to the host BGHFVUI535V2, named instance sqlexpress failed. Error: "java.net.SocketTimeoutException: Receive timed out". Verify the server and instance names and check that no firewall is blocking UDP traffic to port 1434.  For SQL Server 2005 or later, verify that the SQL Server Browser Service is running on the host.
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.getInstancePort(SQLServerConnection.java:3589)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.primaryPermissionCheck(SQLServerConnection.java:1225)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:972)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
    at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at ClassStart.main(ClassStart.java:34)

在 c# 中我有连接字符串:

string connectionString = "Server=BGHFVUI535V2\\SQLEXPRESS;Database=dbmy;User Id=mysa;Password=mypsw;"; 

它有效。

【问题讨论】:

  • 在 Java 连接上你有 User 而不是 User Id
  • 我改成 User Id=mysa 但结果是一样的
  • 来自错误信息:“验证SQL Server Browser服务是否在主机上运行。”
  • 它正在运行,因为从 c# 我可以毫无问题地连接到数据库。 TCP协议也开启了
  • 您可以从 C# 进行连接这一事实保证 SQL Server Browser 服务正在运行。当 SQL Server Browser 服务停止时,C# 可以连接到本地 SQL Server 实例。您实际上必须启动 SQL Server 配置管理器并检查“SQL Server 服务”选项卡以查看浏览器服务是否正在运行。

标签: java sql-server eclipse jdbc


【解决方案1】:

试试这个

String url = "jdbc:sqlserver://localhost;user=MyUserName;password=*****;";

来自 MSDN 网站。 Link

【讨论】:

  • 防火墙已禁用。我仍然收到同样的错误。在 c# 中它可以工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多