2

JAVAコードをローカルにあるSQL Serverに接続しようとしています.これは私がしようとしていることです:

     public static void main(String[] args) throws ClassNotFoundException, SQLException, InvalidFormatException, IOException  {

         Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");    
         con = DriverManager.getConnection("jdbc:sqlserver://localhost" + "databaseName=talisman" + "user=karim" + "password=123"); 

//rest of the code
}}

私はこの例外を得ました:

    Dec 18, 2012 11:29:40 AM com.microsoft.sqlserver.jdbc.SQLServerConnection <init>
SEVERE: Java Runtime Environment (JRE) version 1.6 is not supported by this driver. Use the sqljdbc4.jar class library, which provides support for JDBC 4.0.
Exception in thread "main" java.lang.UnsupportedOperationException: Java Runtime Environment (JRE) version 1.6 is not supported by this driver. Use the sqljdbc4.jar class library, which provides support for JDBC 4.0.
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.<init>(SQLServerConnection.java:304)
    at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1011)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at cct.karim.karim.main(karim.java:62)

そしてかなり立ち往生しています...私はあなたの助けに感謝しますが、あなたの答えを具体的にしてください

アップデート:

私はEclipseを使用しており、 jbdc4 をダウンロードしました。Eclipseに含める方法を教えてください。

4

5 に答える 5

3

以下の方法で、JAVA コードをローカルで SQL Server に接続することもできます。

Microsoft SQL Server JDBC Driver SQL JDBC 認証ファイルが必要です

認証後、認証ファイルをダウンロードした後、このファイルをウィンドウのsystem32フォルダーにコピーします。SQL Server JDBC ドライバー (jar ファイル) のクラス パスを設定するようになりました。ここで、データベース mssumit があり、ユーザー名とパスワードが sumit であるとします。widows 認証で SQL Server に接続することもできます。Windows 認証で接続する場合は、次のコードを使用できます。

Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=mssumit;integratedSecurity=true");
Connection conn =DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=mssumit;user=sumit;password=sumit;");

ユーザー名で接続できない場合があります。その場合は、SQL Server 認証で接続できるデータベース接続プロパティを確認してください。次のコードで SQL Server ドライバー クラスをインスタンス化します。

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
Connection conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=mssumit;user=sumit;password=sumit;");

詳細な説明、手順、およびソース コードについては、このリンクを確認できますhttp://compilr.org/java/jdbc-connection-with-ms-sql-server-in-java/

于 2012-12-18T10:26:35.933 に答える
2

MS SQL の代替ドライバーであるjtdsドライバーを試してください。ドライバーを正しく使用する方法の詳細については、はじめにをお読みください。

于 2012-12-18T09:43:25.230 に答える
1

例外メッセージを読むと、Java 1.6 をサポートしない古い JDBC ドライバーを使用していることがわかります。

ここsqljdbc4.jarから、JDBC 4.0 ( )を使用する新しいバージョンを取得する必要があります。

于 2012-12-18T09:41:57.903 に答える
1

ランタイム環境は jre 1.6 を使用しており、使用している sql jar は Java 6 と互換性がありません。代わりに sqljdbc4.jar を含めてください。

于 2012-12-18T09:42:21.453 に答える
0

このスレッドがお役に立てば幸いです - JDBC を使用して SQL Server 2008 データベースに接続するにはどうすればよいですか? .

基本的に、JDBC を使用するには、Windows 認証と SQL 認証を使用する方法が 2 つあります。SQL 認証はおそらく最も簡単です。あなたができることは次のようなものです:

String userName = "username";
String password = "password";

String url = "jdbc:sqlserver://MYPC\\SQLEXPRESS;databaseName=MYDB";

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(url, userName, password);

ビルドパスに sqljdbc4.jar を追加した後。

ウィンドウ認証の場合、次のようなことができます。

String url = "jdbc:sqlserver://MYPC\\SQLEXPRESS;databaseName=MYDB;integratedSecurity=true";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(url);

次に、sqljdbc_auth.dll へのパスを VM 引数として追加します (ビルド パスには sqljdbc4.jar が必要です)。

詳細が必要な場合は、jTDS を使用して Java から SQL Server に接続する方法と、Eclipse を使用して JDBC に接続する方法を示す簡単なステップバイステップ ガイドについては、こちらを参照してくださいそれが役に立てば幸い!

于 2013-08-28T15:20:03.577 に答える