次のコードがコマンド「execute」の最後の行でエラーメッセージを表示してエラーを引き起こしている理由を誰か教えてください:
タイプ Query のメソッド execute(Object, Object, Object) は、引数 (Long、Long、Date、Date) には適用されません。
Query q = pm.newQuery(Appointment.class,"AdminID == AID"+
" && EmployeeID == CEID"+
" && Time > STime"+
" && Time < ETime");
q.declareImports("import java.util.Date");
q.declareParameters("Long AID, Long CEID, Date STime, Date ETime");
q.setOrdering("Time");
Appointments = (List<Appointment>) q.execute(AdminID, CurrentEmployeeID, Time1, Time2);
私が知る限り(エラーメッセージで暗示されているように、実行関数は最大3つの引数しか取ることができません。この場合、私がやりたいことを達成する方法について誰かアドバイスできますか?私は次のコードを試しました、しかし、実行するたびに解析エラーが発生します!
Query q = pm.newQuery(Appointment.class,"AdminID == "+AdminID+
" && EmployeeID == "+CurrentEmployeeID+
" && Time > "+Time1+
" && Time < "+Time2);
q.declareImports("import java.util.Date");
q.setOrdering("Time");
Appointments = (List<Appointment>) q.execute();
私が得る解析エラーは次のとおりです。
org.datanucleus.store.query.QueryCompilerSyntaxException: 式の一部を解析できませんでした: Aug 13 11:44:55 BST 2012 && Time < Mon Aug 13 11:45:05 BST 2012