оператор не существует: bigint = bytea - PullRequest
3 голосов
/ 30 января 2012

Вот мой код:

     List<Long> ids= new ArrayList<Long>();
     ids.add(10L);ids.add(11L);
    String queryString ="select type_id from Types where parent_type_id in (:typeIds)";

    SQLQuery sqlQuery = session.createSQLQuery(queryString);

    sqlQuery.setParameter("typeIds", ids);
            List<Object[]> results = sqlQuery.list();

Я получаю эту ошибку при выполнении вышеуказанного запроса. К вашему сведению, я только что увидел эту проблему, когда передал массив или ArrayList в качестве параметра.

ERROR util.JDBCExceptionReporter: ERROR: operator does not exist:
bigint = bytea Exception in thread "main"
org.hibernate.exception.SQLGrammarException: could not execute query
    at
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
    at
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)

Ответы [ 2 ]

5 голосов
/ 31 января 2012
query.setParameterList("typeIds",ids);

Исправлено с помощью setParameterList();

0 голосов
/ 25 марта 2018

Вы получите эту же ошибку, если null == ids.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...