static void go() {
PersistenceManager pm = null;
Transaction tx = null;
try {
pm = new JDOFactory().getFactory().getPersistenceManager();
tx = pm.currentTransaction();
Query q = pm.newQuery("javax.jdo.query.SQL", "select * from \"OAUTHTEMP\" where \"O_AUTH_TOKEN\"=:oAuthToken and \"O_AUTH_VERIFIED\"=:oAuthVerified");
Map params = new HashMap();
params.put("oAuthToken", "08f727ab-7132-426c-8fc2-9ce2b30ebf9d");
params.put("oAuthVerifier", "C3ExGzv+cAQkOqwL4oY94fZhDyVLyo/0H31w8F3q+YYLSBDxl2YARcglqPuKcsfT");
List<OAuthTemp> result = (List<OAuthTemp>) q.executeWithMap(params);
} catch (Exception e) {
e.printStackTrace();
}
}
沒有持久字段這是我的函數來獲取的令牌和驗證的基礎上,所有的數據,但我得到下面的異常:SQL查詢類在SELECT
SQL查詢類沒有SELECT:select * from「OAUTHTEMP」其中「O_AUTH_TOKEN」=:oAuthToken和「O_AUTH_VERIFIED」=:oAuthVerified org.datanucleus.exceptions.NucleusUserException:SQL查詢類在SELECT中沒有持久字段:select * from「 OAUTHTEMP「其中」O_AUTH_TOKEN「=:oAuthToken和」O_AUTH_VERIFIED「=:oAuthVerified at org.datanucleus.store.rdbms.query.SQLQuery.pr epareForExecution(SQLQuery.java:994) 在org.datanucleus.store.rdbms.query.SQLQuery.executeWithMap(SQLQuery.java:818) 在org.datanucleus.api.jdo.JDOQuery.executeInternal(JDOQuery.java:369) at com.xenonstack.demo.test.Test.go(Test.java:61) at com.xenonstack.demo.test處的org.datanucleus.api.jdo.JDOQuery.executeWithMap(JDOQuery.java:276) 。 Test.main(Test.java:40)
我OAuthTemp類是這個 OauthTemp class。
如果它解決了您的問題,請接受答案。如果它沒有回覆它的影響 –