如果" key"参数包含空格(例如:" cat and dog")查询结果为空..为什么?
Query q=em.createQuery("SELECT a FROM Articolo a WHERE a.nome LIKE '%"+key+"%'");
但是如果关键参数只包含" cat"或"和"或"狗"它有效吗?
答案 0 :(得分:0)
您是否在数据库中的查询下面执行任何结果,
选择一个FROM Articolo a WHERE a.nome LIKE'%“+ key +”%'
'猫与狗'有两个空间,可能是它没有得到的原因。 JPQL,HQL,JDBC以相同的方式工作。
但是,我建议在编写jpql查询之前我们可以检查数据库中的查询结果。
答案 1 :(得分:0)
当您尝试使用时,请考虑使用命名参数。
Query q=em.createQuery("SELECT a FROM Articolo a WHERE a.nome LIKE :value);
q.setParameter("value", "%dog%");