是否可以在 JPA 中进行跨数据库表连接?
我在一个数据库中有一个 users
表,它有一个指向另一个数据库中的 organizations
表的外键。两个数据库都在同一台物理机器上。现在 MySQL 允许我编写跨多个数据库的查询,但我不确定如何使用 JPA 执行此操作。
Java POJO 上的@Entity
注释不采用数据库名称,因此无法标记跨数据库关系。
这种情况有解决办法吗?也许使用 native 查询来加载连接的实体?
最佳答案
如果 MySQL 允许您编写跨数据库查询的 SQL,那么您可以在 JPA 中的 native 查询中使用此 SQL。
我假设您正在使用某种数据库链接机制? 如果是这样,那么您也应该能够映射它。您可以将链接数据库的@Table 上的“架构”设置为链接名称。
即
@Table(name="organizations", schema="org_schema@org_db")
关于mysql - JPA 中的跨数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5855872/