2012-03-05 67 views
2

Im試圖連接到我的sqlserver數據庫時遇到困難。 使用數據庫IM是SQL-Server 2008中使用 司機IM是一個我來到這裏:無法獲得SQL Server連接

public static final String URL_FORMAT = "jdbc:sqlserver://%s:%s;DatabaseName=%s"; 

    public static void main(String[] args) throws SQLException, ClassNotFoundException { 
     String connectionURL = String.format(URL_FORMAT, "10.31.3.3", 1433, "EPowerTest"); 
     System.out.println("connecting to: "+connectionURL); 

     Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
     Connection connection = DriverManager.getConnection(connectionURL, "sa", "*************"); 
     if (connection == null) { 
      System.out.println("no connection was established"); 
     } else { 
      System.out.println("succesfully connected"); 
     } 
    } 

現在這段代碼在我的開發人員運行:Microsoft download page

我使用下面的代碼機器,即時獲得以下結果:

連接到:jdbc:sqlserver:// :1433;數據庫名= ******

成功地連接

但是,當我在我的開發者的機器上運行該代碼段將打印follwing:

連接到:jdbc:sqlserver://10.31.3.3:1433; DatabaseName = *******

第二行永遠不會被打印,因爲它看起來像DriverManager.getConn ection不返回。這不是防火牆問題,因爲所有三個終端(db服務器,開發人員機器和測試機器)都在同一個網絡上。爲什麼我的方法不能返回?我錯過了一些重要的SQLServer文件?

希望這裏的任何人都可以幫助我解決這個煩人的問題!

+0

可能有一個超時,您等待電話返回多久?我放棄了大約10分鐘前的 – Thomas 2012-03-05 13:59:38

+0

,這絕對不是暫停! – Terraego 2012-03-05 14:20:54

回答

2

檢查機器中連接掛起的JVM是否爲版本1.6.0_29。如果是,請升級到較新的Java。

這是another link解釋問題。

+0

太好了,解決了我的問題盧西亞諾,你是如何得到這個答案的?我在Google上沒有找到任何結果! – Terraego 2012-03-05 14:32:45

+0

因爲它發生在我前段時間。但我只是搜索sql服務器掛接連接java(或類似的東西),並在谷歌結果。 – Luciano 2012-03-05 14:35:06