EclipseLink:不将TENANT_ID附加到entityManager.merge(entity)操作的查询的WHERE子句

时间:2014-03-13 16:36:29

标签: eclipselink

我正在使用EclipseLink和Spring Data JPA来满足单表多租户要求。

我的问题是没有为UPDATE操作添加TENANT_ID。

Spring Data JPA在内部将此调用委托给entityManager.merge(entity),但问题是此调用没有将TENANT_ID附加到WHERE子句。

示例:

What I want : UPDATE USER SET firstName = ?, lastName = ? WHERE userName = ? and TENANT_ID =?

我得到的:UPDATE USER SET firstName = ?, lastName =?用户名=?。

因此,这是一个问题,因为对于单个表中的多个租户,可能存在具有相同 userName 的用户。

Why TENANT_ID is not being appended fore em.merge(entity) operation?
The same case for em.remove()

如果不是,请为此提出任何解决方案。

0 个答案:

没有答案