我目前使用下面的連接字符串連接到數據庫(數據庫是相同的服務器上SERVERIP):等效JDBC連接字符串
String constr = "Data Source=ServerIP,1433;Network Library=DBMSSOCN;Initial
Catalog=dbName;User ID=dbUserID;Password=dbUserPassword";
在使用時,該連接罰款asp.net。 (我已經手動創建dbUserId,並從SQL Server管理工作室分配它dbUserPassword dbUserId是數據庫「dbName」的所有者)
我有一個java swing應用程序在另一臺pc上,我需要連接到同一數據庫。我使用駐留在C:中的sqljdbc4.jar。我的類路徑有條目「。; C:\ sqljdbc4.jar」。爲了實現該連接,我使用的下面幾行代碼:
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://ServerIP:1433;databaseName=dbName";
String user = "dbUserID";
String pass = "dbUserPassword";
Connection connection = DriverManager.getConnection(url, user, pass);
然而,我得到就行異常「連接連接=的DriverManager.getConnection(URL,用戶通過);」 :「與主機」ServerIP「的TCP/IP連接,端口1433失敗。錯誤:」連接超時。驗證連接屬性。確保主機上正在運行SQL Server實例並接受端口上的TCP/IP連接。確保到端口的TCP連接沒有被防火牆阻止。「
我已經檢查過Windows防火牆已關閉(並且它還在家庭和公共網絡上爲MSSQLSERVER端口1433 tcp添加了異常)從SQL Server Management Studio中,我已經啓用TCP/IP的SQL Server和SQL Server Express的。
任何人都可以點我什麼可能是錯誤的連接字符串或SQL Server連接設置?
你可以從你運行Swing應用程序的地方Ping ServerIP嗎? – maba
Ping IP,並檢查POrt是否打開,可能正在使用某些網絡嗅探器 –
@maba我可以ping IP。事實上,我從運行java應用程序的機器遠程使用服務器。另外,netstat -aon給出了以下行:TCP 0.0.0.0:1433 0.0.0.0:0 LISTENING 5584 – Karan