日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java sql server连接字符串_关于Java:SQL Server的等效jdbc连接字符串

發布時間:2023/12/1 java 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java sql server连接字符串_关于Java:SQL Server的等效jdbc连接字符串 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我目前正在使用以下連接字符串連接到數據庫(該數據庫與ServerIP在同一服務器上):

String constr ="Data Source=ServerIP,1433;Network Library=DBMSSOCN;Initial

Catalog=dbName;User ID=dbUserID;Password=dbUserPassword";

在asp.net中使用時,此連接良好。 (我已經從sql server management studio中手動創建了dbUserId并將其分配給dbUserPassword。dbUserId是數據庫" dbName"的所有者)

我在另一臺PC上有一個Java Swing應用程序,需要連接到同一數據庫。我正在使用駐留在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,user,pass);"行上遇到異常。 :"與主機" ServerIP"的TCP / IP連接,端口1433失敗。錯誤:"連接超時。驗證連接屬性。確保主機上正在運行SQL Server實例并在端口上接受TCP / IP連接。確保與端口的TCP連接沒有被防火墻阻止。"

我檢查了Windows防火墻是否已關閉(并且還為家庭和公共網絡上的MSSQLSERVER端口1433 tcp添加了例外)。從sql服務器管理工??作室,我已經為sql服務器和sql server express啟用了TCP / IP。

誰能指出我的連接字符串或sql server連接設置可能有問題嗎?

您可以從運行Swing應用程序的位置ping ServerIP嗎?

ping IP并檢查POrt是否打開,可能正在使用某些網絡嗅探器

@maba我能夠ping通IP。 實際上是從運行Java應用程序的計算機上遠程使用服務器。 另外,netstat -aon給出以下行:TCP 0.0.0.0:1433 0.0.0.0:0 LISTENING 5584

感到困惑...是ServerIP的名稱,還是只是您在問題中寫的而不是x.x.x.x的東西?

@maba是我寫的東西,而不是x.x.x.x

@maba我很困惑,因為我強迫asp.net使用tcp連接到自身,并且成功完成了連接。 另一方面,java應用程序將無法連接。

終于找到了根本原因。 問題不在于Java連接字符串,IP地址或端口。 就是在網絡上。 服務器IP和運行Java應用程序的計算機的IP位于不同的子網中。 因此,這兩個子網之間的切換機制阻塞了端口1433上的流量。因此,我在運行Java應用程序的PC上遇到了超時問題,而asp.net Web應用程序工作得很好(流量沒有通過交換機與Internet互連)。 子網絡)

我希望這對將來嘗試實現類似目標的人有用。

您為上述問題做了什么? 即。 哪里有什么變化?

@DPM我只是確保Java應用程序和sql數據庫服務器位于與上述相同子網中的計算機上。 我可以知道您還需要什么其他信息嗎?

@Karan我想我也面臨著同樣的問題。 我的sql服務器的主機名為* .uss.net,而linux服務器的主機名為* .privatecloud.local。 這些在不同的子網中嗎? 你能幫助我嗎?

您是否嘗試過jtds.jar。 我正在使用以下它正在為我工作。

public static String jdbc_url="jdbc:jtds:sqlserver://yourServerIp:1433/dbName";

public static String jdbc_username="sa";

public static ?String jdbc_password="prabhakar";

public static String jdbc_driver="net.sourceforge.jtds.jdbc.Driver";

Class.forName(jdbc_driver);

Connection cn=null;

cn=DriverManager.getConnection(jdbc_url, jdbc_username,jdbc_password);

虐待嘗試一下。 謝謝。

總結

以上是生活随笔為你收集整理的java sql server连接字符串_关于Java:SQL Server的等效jdbc连接字符串的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。