1

これは単純な構文エラーだと思います。しばらく前に Web ホスティング プランを購入しましたが、いくつかの空の MySQL データベースに接続してデータを渡す練習をしたいと思っています。

これを行う方法に関する多数の投稿を見つけましたが、すべて「localhost」が IP として含まれています。他の投稿からこの構文を収集しましたが、それでもエラー メッセージが表示されます

Unable to connect to database error: java.sql.SQLException: No suitable driver found for jdbc:mysql://ipAddress:port/dbName

どこを見ても、これは URL の問題であるか、ドライバーが読み込まれていないと書かれています。.jar をダウンロードして IntelliJ 内の Classpath に配置しましたが、ドライバー ファイルの読み込みに関する追加情報は見つかりませんでした。これは私のコードです。IP アドレスは私の Web サイトの IP です。

Connection connection = null;

        try{
            Class.forName("com.mysql.jdbc.Driver").newInstance();

        } catch (Exception err){
            System.out.println(err.getMessage());
        }

        //Establish connection using DriverManager
        try {
            String host = "jdbc:mysql://ipAddress:3306/dbName";
            String uName = "userName";
            String uPass= "userPass";
            connection = DriverManager.getConnection(host, uName, uPass);
        } catch (SQLException err) {
            System.out.println("Unable to connect to database error: "+err);
        }

「ホスト」を、Web で見たさまざまなものに変更してみました。

jdbc:mysql:ipAddress:3306/dbName
jdbc:mysql://ipAddress/dbName

私もこれに従いましたが、私の問題は主に私が思うURLにあります。 http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=%2Frzaha%2Fdb2drivr.htm

任意の支援をいただければ幸いです!

編集:その.jarをダウンロードしましたが、どこに配置すればよいかわからなかったので、このディレクトリに配置してから、このディレクトリをクラスパスとしてリンクしました。 //Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk/Contents/MacOS/mysql-connector-java-5.1.22-bin.jar!/ このリンクから: JConnector

これを自分のマシンから実行し、Web ホスティング プロバイダーのデータベースに接続したいと考えています。このプログラムは、JFrame 内のテキスト ボックスから入力を取得する単純な Java アプリケーションです。

4

4 に答える 4

2

具体的なエラー メッセージ:

Unable to connect to database error: java.sql.SQLException: 
No suitable driver found for jdbc:mysql://ipAddress:port/dbName

MySQL Connector/J実行中の JVM がアプリケーションのクラスパスで JARを見つけられない場合に発生します。

IntelliJ 内では、に移動できますFile->Project Structure->Modules。現在のモジュールについて、Dependenciesタブをクリックします。アイコンをクリックして JAR またはライブラリを追加し、JAR を見つけますMySQL Connector/J

これで、IntelliJ を介して実行している場合、実行中の JVM がそれを見つけるはずです。

于 2013-01-30T18:05:42.680 に答える
0

交換することをお勧めします

 try {
     Class.forName("com.mysql.jdbc.Driver").newInstance();
 } catch (Exception err){
     System.out.println(err.getMessage());
 }

Class.forName("com.mysql.jdbc.Driver")

1) newInstance() は無関係です

2)そのようなドライバーがない場合は、例外をスローさせます

于 2013-01-30T15:44:42.547 に答える
0

あなたのコードは問題なく動作しているようです。問題はコネクタにあるはずです。現在使用しているコネクタはどれですか? J コネクタを使用して、jar ファイルをビルド パスに追加できます。

于 2013-01-30T16:33:36.877 に答える
0

「適切なドライバーが見つかりません」は、JVM が mysql コネクターの jar ファイルを見つけられないことを示します。どのバージョンの mysql Java コネクタを使用していますか? IntelliJ クラスパスに配置しても機能しない場合は、プロジェクトへの依存関係を作成してみてください。

于 2013-01-30T15:45:20.287 に答える