2

私はSQLサーバーの初心者で、JavaとSQLサーバー間の接続を作成したいと考えています。私の接続コードは次のとおりです。

 public static void main(String[] args) {

    Connection con;
       try {

       String connectionUrl = "jdbc:sqlserver://HELLO-PC:1433; databaseName=Attendance Teachers;";

        con = DriverManager.getConnection(connectionUrl, "", "");
        System.out.println("connected");
        java.sql.Statement st = con.createStatement();    
      }
        catch (SQLException ex) {

        Logger.getLogger(AttendanceTeachers.class.getName()).log(Level.SEVERE, null, ex);
    }

私のサーバー名は「HELLO-PC」で、sqljdbc.jar も追加します。エラーが表示されます:

Feb 01, 2013 11:24:46 AM attendance.teachers.AttendanceTeachers main
SEVERE: null
java.sql.SQLException: No suitable driver found for jdbc:sqlserver://HELLO-PC:1433;   databaseName=Attendance Teachers;
at java.sql.DriverManager.getConnection(DriverManager.java:604)
at java.sql.DriverManager.getConnection(DriverManager.java:221)
at attendance.teachers.AttendanceTeachers.main(AttendanceTeachers.java:30)

本当に助けが必要です。ありがとう。

4

3 に答える 3

5

問題はコードにあるのではなく、プログラムを実行するときに、sqlserver の JDBC ドライバー クラスを含む jar ファイルがクラスパスにないことです。

適切な sqlserver Web サイト (google) にアクセスし、JDBC ドライバー jar をダウンロードして、IDE で実行する場合はビルド パスに配置し、コマンド ラインから実行する場合はプログラム jar と同じディレクトリに配置します。

于 2013-01-31T08:04:24.043 に答える
2

まず、これを行う必要があります。

private final String dbDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

try {
    Class.forName(dbDriver).newInstance(); // use java reflection to load the database driver
} catch (Exception ex) {
    System.out.println("failure");
}
于 2013-01-31T08:14:32.300 に答える
0

この問題は通常、JDBC 4.0 を使用している場合に古いバージョンの JDBC ドライバーを使用している場合に発生します。

Microsoft Web サイトから SQlserver JDBC ドライバーをダウンロードすると、sqljdbc4.jar と sqljdbc.jar の 2 つの jar ファイルが得られます。

1.sqljdbc.jar: JDBC 3.0 仕様のサポートを提供します

2.sqljdbc4.jar: JDBC 4.0 仕様のサポートを提供します

So.sqljdbc4.jarで確認してください

于 2013-01-31T09:00:27.693 に答える