1

データベースにはまだ何も追加していないため、次のクエリは結果として0を返すはずです。

    Query query = pm.newQuery(Password.class);
    query.setFilter("password == :passwordParam");
    query.setResult("count(password)");
    query.setResultClass(Integer.class);
    Integer result = (Integer)query.execute(password);
    System.out.println("Result: [" + result + "]");

戻るnull

javadocs も結果ドキュメントも、このメソッドが null を返すことができることについて何も述べていません。私の推測では、私は何か間違ったことをしたということです。

http://db.apache.org/jdo/api20/apidocs/javax/jdo/Query.html#execute%28%29 http://www.datanucleus.org/products/accessplatform_2_2/jdo/jdoql_result.html

4

1 に答える 1

1

あなたのコードを DataNucleus で試したとき、最初は同様の問題が発生しました。

バイコード エンハンサーが実行されていませんでした。有効にすると、カウントが0になりました。

おそらく、あなたは同様の問題を抱えています。

于 2010-11-11T11:16:35.587 に答える