6

jdbc 4.0を使用して Java から Sql Server 2008 に接続する必要があります。私は非常に単純なコードを持っています:

 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
 String connectionUrl = "jdbc:sqlserver://localhost;" +
    "integratedSecurity=true;";
 Connection con = DriverManager.getConnection(connectionUrl);

しかし、私はこのエラーがあります:

    Exception in thread "main" com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host localhost, port 1433 has failed. Error: "Connection refused: connect. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.".
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
    at com.microsoft.sqlserver.jdbc.SQLServerException.ConvertConnectExceptionToSQLServerException(SQLServerException.java:241)
...

私はこの答えに従います: https://stackoverflow.com/a/12524566/1554397

Libraries/Compile に jdbc4.jar を追加しました

SQL Server Browser Windows サービスが実行されています。

SQL Server Network Configuration で、TCP/IP プロパティで Enebled を選択しました。

TCP アドレスを 1433 に設定します。

実行時に、VM オプションに -Djava.library.path=my path を sqljdbc_auth.dll に入力し、JDk の bin sqljdbc_auth.dll にコピーします。

私は何をすべきか?

編集: cmd telnet localhost 1433に書き込むと、「ポート 1433 でホストへの接続を開けませんでした」というメッセージが表示されます

4

1 に答える 1

4

Window 認証を使用している場合は、次のようなことができます。

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 が必要です)。

詳細が必要な場合は、Java から SQL Server に接続する方法を示す短いステップバイステップ ガイドをご覧ください。それが役に立てば幸い!

于 2013-08-28T15:25:43.977 に答える