2012-01-31 29 views
0

IM幾乎變得瘋狂:)的Java JDBC連接到Microsoft SQL - 無連接,但沒有任何錯誤

我安裝了一個Microsoft SQL Server 2008 R2的IM我的網絡,現在的IM試着到SQL數據庫通過JAVA JDBC連接。即時通訊使用Microsoft JDBC驅動程序V3的sqljdbc4.jar(http://www.microsoft.com/downloads/de-de/details.aspx?FamilyID=a737000d-68d0-4531-b65d-da0f2a735707

Java代碼:

Connection conn = DriverManager.getConnection("jdbc:sqlserver://192.168.1.144:1433;database=mydatabase;user=root;password=root"); 
//this line is not even printed so the problem have to be at getConnection 
System.out.println("test"); 

奇怪的是,有沒有出現異常。它只是無所事事。如果我用錯誤的用戶名嘗試它,則會出現異常,因此認證似乎可行。

也許有阻止來自java客戶端(服務器的操作系統是MS Server 2008R2)的連接的afirewall問題?

希望你們中的一些人有一個想法可能是什麼問題或解決方法。在此先感謝...

+0

我認爲你是從連接字符串 – Cratylus 2012-01-31 22:04:41

+0

THX您的回覆缺少'instanceName' ... 但它不是實例: 我想: '連接康恩= DriverManager.getConnection(「jdbc:sqlserver://192.168.1.144 \\ WIN-JRVO6I57T5V:1433 ;; loginTimeout = 20; database = Studienprojekt; user = root; password = root」);' 以及 'Connection conn = DriverManager.getConnection(「jdbc:sqlserver://192.168.1.144:1433; instanceName = WIN-JRVO6I57T5V; loginTimeout = 20; database = Studienprojekt; user = root; password = root」);' 在JDBC文檔中,他們說如果沒有提到實例,它將使用默認值。我認爲多數民衆贊成在我的情況是正確的... – Julian 2012-02-01 10:16:36

+0

所以我試圖直接在服務器上運行的腳本與localhost作爲服務器名稱,它像charme一樣工作。 因此,必須有一個正確的政策問題與sql服務器或微軟服務器的防火牆...即時通訊不真正進入服務器的東西,所以也許你們有些人有一個想法在哪裏看... – Julian 2012-02-01 20:05:08

回答