したがって、プログラムは、データベースとして .mdb ファイルに接続しています。他のすべてのコードをプログラムに書き込んで、正常に動作することはわかっていますが、createQuery(Sring, int) メソッドにパラメーターとして渡される複雑な SQL ステートメントに問題があります。
Name、Id、City、State Classes を持つ 2 つのテーブル Person があり、ID、Course、Grade があります。
この行の目的は、Persons テーブルから「Name and Id」を出力し、Classes テーブルから「Course and Grade」を出力することです。クエリは、一致する ID (Person.Id = Classes.Id) を持ち、特定のコース ('CSC 225') で、成績が 70 を超えるエントリのみを出力します。
SQL ステートメントについて詳しく教えられたことがないため、私の基本的な理解は次のコード行を作り上げたものです。
String s = "SELECT " + personTableTitle + ".Name, " + personTableTitle + ".Id, " +
classesTableTitle + ".Course, " + classesTableTitle + ".Grade FROM " +
personTableTitle + " " + classesTableTitle + " WHERE " +
personTableTitle + ".ID = " + classesTableTitle + ".Id AND " +
"Course = 'CIS 225' AND " + classesTableTitle + ".Grade > 70 AND " +
personTableTitle + ".Id = ? AND " + classesTableTitle + ".Id = ?";
System.out.print(s); // Double check of my SQL Statement before passing
db.createQuery(s, 4);
私は水曜日の夜からこの SQL ステートメントをいじっていましたが、うまくいきませんでした。