2

integer[]次のクエリで作成されたtype の列があります。

...
questions int[] DEFAULT '{}',
...

Hibernate のクエリ機能を使用して一連の整数を挿入しようとしています。

Set<Integer> questions = randomQuestions();
Query query = session.createSQLQuery("UPDATE contestant SET questions=:questions WHERE email=:email");
query.setParameterList("questions", questions);
query.setParameter("email", email);
query.executeUpdate();

これは正常に実行されず、例外がスローされます。

Caused by: org.postgresql.util.PSQLException: ERROR: column "questions" is of type integer[] but expression is of type record
Hint: You will need to rewrite or cast the expression.

整数のセットをデータベースに挿入するにはどうすればよいですか?

4

1 に答える 1

1
query.setParameterList("questions", questions.toArray(new Integer[]));

上記を試してみてください。これはうまくいくはずです(まだ試していません)

于 2013-07-25T06:05:25.437 に答える