2016-08-04 4 views
0

connection stringを使用して、リモートのMS SQLサーバ上のデータベースに接続しようとしています。次のように接続文字列は次のとおりです。JavaがリモートのMS SQLサーバデータベースに接続する

data source=qsss.gar.de\SQL2012,3000;initial catalog=City;persist security info=True;user id=usr;password=usr##2009; 

私は、適切なドライバーを持つ必要があります理解し、私はmicrosoft.com/download/en/details.aspx?id=21599 からSQL Serverのドライバをダウンロードして、私のプロジェクトのビルド・パスにそれらを追加しました。それらはsqljdbc.jarsqljdbc4.jarです。

このテストコードを使用して、接続が確立されているかどうかを確認しています。 のJava Runtime Environment(JRE)バージョン1.8このドライバでサポートされていません。

public static void main(String[] args) throws Exception { 

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

    Connection connection = DriverManager.getConnection(
      "qsss.gar.de\SQL2012,3000;initial catalog=City;persist security info=True;user id=usr;password=usr##2009;"); 


    System.out.println("Connected!"); 
} 

そう、私はエラーを取得します。 JDBC 4.0をサポートするsqljdbc4.jarクラス・ライブラリを使用します。

私はここで間違っていますか?

答えて

2

両方のジャーをクラスパスに追加しないでください。どちらもクラスcom.microsoft.sqlserver.jdbc.SQLServerDriverクラスを含んでいるため、プログラムはsqljdbc.jarからロードします。クラスパスからsqljdbc.jarを削除し、sqljdbc4.jarを追加するだけで、プログラムは常に正しいドライババージョンをロードします。

関連する問題