我正在使用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()
如果不是,请为此提出任何解决方案。