我有一个休眠的SQL查询是这样的:如何使用like和%来做Hibernate查询?
public void funcA(String str) {
StringBuilder sql = new StringBuilder();
sql.append("select fieldA from tableA where fieldB like '%:searchKey%'");
...
session.createSQLQuery(sql.toString())
.addScalar("fieldA", StandardBasicTypes.STRING)
.setParameter("searchKey", str);
...
}
,当我作出这样query.list()
查询时,我得到了以下错误:
[WARNING ] SQL Error: -7, SQLState: 42601[ERROR ] The character "%" following "fieldB like" is not valid.
[ERROR ] An error occurred during implicit system action type "2". Information returned for the error includes SQLCODE "-7", SQLSTATE "42601" and message tokens "%|fieldB like".
我可以知道我怎么能解决这个问题?
如果fieldA是长整型还是非整型?然后休眠不喜欢字符串。我仍然想做一个“模糊”匹配(即包含使用%%),但列是一个长。 Mysql查询很好,但它似乎并不像冬眠。 – 2016-04-11 16:39:06