Hibernate: Как установить значение параметра запроса NULL с HQL?
Как я могу установить параметр Hibernate на "ноль"? Пример:
Query query = getSession().createQuery("from CountryDTO c where c.status = :status and c.type =:type")
.setParameter("status", status, Hibernate.STRING)
.setParameter("type", type, Hibernate.STRING);
В моем случае статус String может быть нулевым. Я отладил это и Hibernate затем генерирует строку SQL / запрос, как это ....status = null
... Однако это не работает в MYSQL, так как правильный оператор SQL должен быть ""status is null
(Mysql не понимает status = null и оценивает его как ложное, так что никакие записи не будут возвращены для запроса, в соответствии с документами mysql, которые я прочитал ...)
Мои вопросы:
Почему нетHibernate
правильно перевести нулевую строку внулевой" (а скорее и неправильно создаёт= Нуль»)?
Каков наилучший способ переписать этот запрос, чтобы он был нулевым? С nullsafe я имею в виду, что в том случае, если "статус" Строка имеет значение null, чем она должна создатьнулевой"?
Большое спасибо! Тим