所以程序是连接到一个 .mdb 文件作为我们的数据库。我已经将所有其他代码编写到程序中并且知道它可以正常工作,但是我现在遇到了将复杂的 SQL 语句作为参数传递给 createQuery(Sring, int) 方法的问题。
有两张表Person,分别有Name、Id、City、State Classes,里面有Id、Course、Grade
此行的预期目的是从 Persons 表中打印出“Name and Id”,并从 Classes 表中打印“Course and Grade”。该查询仅打印在特定课程('CSC 225')中具有匹配 ID(Person.Id = Classes.Id)且成绩 > 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 语句,但运气不佳。