だから私は今問題にぶつかっています....そして私はあなたの助けが必要です。EclipseでDerbyJDBCドライバーをセットアップしようとしています。ダウンロードしたDerbyドライバーは10.9でしたが、Eclipseにあるドライバーは「システムバージョン10.2」と言っています。
[ウィンドウ]->[設定]、[データ管理]、[接続]、[ドライバー定義]に移動し、新しいものを作成しました。Derby EmbeddedJDBCDriverの最新バージョンである10.2を選択します。次に、derby.jarファイルをJARリストに含め、[OK]をクリックします。
次に、Eclipseで、[データソースエクスプローラー]に移動し、[データベース接続]-> [新規...]を右クリックします。[Derby]を選択し、使用したドライバーを選択して、ユーザー/パスを追加し、[完了]をクリックします。
DBは問題なく作成されます...しかし、次のコードを使用すると、エラーが発生します。
String host = "jdbc:derby:C:\\Users\\Samson\\MyDB;create=true";
String user = "admin";
String pass = "admin";
try {
java.sql.Connection conn = DriverManager.getConnection(host, user, pass);
} catch (SQLException e) {
e.printStackTrace();
}
エラーは次のとおりです。
エラーXSLAN:C:\ Users \ Samson \ MyDBのデータベースの形式は、ソフトウェアの現在のバージョンと互換性がありません。データベースは、バージョン10.9によって作成されたか、バージョン10.9によってアップグレードされました。
したがって、何らかの理由で10.2ドライバを使用してこの10.9データベースに接続しようとしているように見えますが、何が間違っているのか理解できません。何か案は?ありがとう!!
編集:わかりました。それで、上記のコードはJavaサーブレット内に配置されます。「DBConnect」という新しいプロジェクトを作成し、その中にderbyのlibを配置し、DBに接続するための簡単なプログラムを作成しましたが、問題なく動作しました。つまり、これは私のサーブレットに関連しています。
Edit2:StackOverflowへの最初の投稿で馬鹿になるようなものはありません。GeronimoのDerbyドライバーは、10.9ではなく10.2しか使用していないため、更新する必要があります。
Edit3:私の仕事用PCでも同じ問題が発生します。何らかの理由で、通常のJavaプロジェクトを作成するときはいつでも正常に機能しますが、Javaサーブレットを使用してこのデータベースに接続しようとすると、エラーが発生します。誰かが何か提案があれば、私はそれを受け入れます。
Edit4:Geronimoのインストールで10.8.2.2_1を使用しているように見えますが、実際に更新する方法がわかりません。今のところ10.8ドライバーをダウンロードしてみて、後でこれに対処します。
Edit5:ええ、どういうわけか、Eclipseでデータソースエクスプローラーを実際に使用できないようです。10.8.2.2_1がインストールされており、サーブレットをDBから正常に保存/読み取りできますが、データソースエクスプローラーを使用して接続しようとすると、作成したテーブルが表示されません。
Edit6:ため息...まあ10.8は実際に機能しました。正しいスキーマを探していませんでした。私は馬鹿のように感じます。