【发布时间】:2014-11-07 02:48:06
【问题描述】:
现在我在查询中使用 hql。 代码是:
return session.createQuery(
"from Company com "
+ " where com.comId = "
+ ":comId and com.phoneNumber = :phoneNumber")
.setString("comId", comId).setString("phoneNumber",
phoneNumber).list();
DB 中的 phoneNumber 是 varchar2(255 char),我使用的是 Oracle DB。
但是这段代码不能在 java 代码中运行。 如果电话号码是“999-000-0001”,它可以工作。我可以得到一个记录。 但是如果 phoneNumber 是“USPersonal”,我不会得到记录。
在Company.java中,phoneNumber是String,有get和set方法。
在 DB 中,我使用 Sql Developer,我可以得到以上所有内容。
我不知道,为什么会这样?是不是 setString 不起作用?
【问题讨论】: