Oracle 10g、Hibernate 3.4
此更新(基于long user.userId值)正确完成:
getHibernateTemplate().bulkUpdate("update Address address set address.preferred = 1 where address.user.userId = ?", 1l);此方法(基于String user.language值)抛出异常ORA-00971: missing SET keyword
getHibernateTemplate().bulkUpdate("update Address address set address.preferred = 1 where address.user.language = ?", "en");有人知道为什么吗?
发布于 2011-03-20 23:06:28
Hibernate documentation说:
因此,您需要用等效子查询替换隐式连接:
getHibernateTemplate().bulkUpdate(
"update Address address set address.preferred = 1 " +
"where address.user in (select u from User u where u.language = ?)",
"en"); https://stackoverflow.com/questions/5368522
复制相似问题