如何将Set插入integer []类型的列中?

时间:2013-07-25 05:59:47

标签: java sql hibernate postgresql

我有一个integer[]类型的列,使用以下查询创建。

...
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.

如何将我的整数集插入数据库?

1 个答案:

答案 0 :(得分:1)

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

尝试上面,这应该有用。(尽管没试过)