2014-11-07 3 views
0

Теперь я использую hql в запросе. Код:Hibernate query.setString не работает

return session.createQuery(
       "from Company com " 
         + " where com.comId = " 
         + ":comId and com.phoneNumber = :phoneNumber") 
       .setString("comId", comId).setString("phoneNumber", 
         phoneNumber).list(); 

PhoneNumber в БД varchar2 (255 символов), и я с помощью Oracle DB.

Но этот код не может работать в java-кодах. Если номер телефона «999-000-0001», он может работать. Я могу получить запись. Но если номер телефона «USPersonal», я не получу запись.

В Company.java, phoneNumber является строкой и имеет методы get и set.

В БД я использую Sql Developer, я могу получить все вышеперечисленное.

Я не знаю, почему это так? Не работает setString?

ответ

0

У меня есть эта проблема.

Потому что в этом случае номер телефона поступает из файла. В файле я проигнорировал, что в телефоне есть номер «USPersonal», а в DB - только «USPersonal».

Так что я не получил эту запись.

Указанные выше коды верны. Как небрежно со мной!

Смежные вопросы