java - 在保持关系的同时将 2 个数据库转换为 1 个
问题描述
我有一个场景,我需要找出一个解决方案,将 2 个数据库中的数据合并到一个更大的数据库中。例如,假设我们有 2 个名为“A”和“B”的数据库。“A”和“B”都有 2 个表(员工和家属),表定义相同。在数据库“A”和表employee 中,我们有一条记录,它在dependents 表中有一条对应的子记录。
类似地,在数据库“B”和表employee 中,我们有一条记录,并且在dependents 表中有一条相应的子记录。
在employee表中,emp_id是PK
在dependents 表中,dependent_id 是PK,emp_id 是FK。
雇员和家属表之间的关系是一对多的。一名员工可以有许多家属。
数据库“A”
表员工
emp_Id|first_name|last_name|email|phn
1|john|doe|john.doe@somedomain.com |xxx-xxx-xxx
表依赖
dependent_id|first_name|last_name|relationship|emp_id
1|lilly|francis|wife|1
数据库“B”
表员工
emp_Id|first_name|last_name|email|phn
1|mike|jenning|mike.jenning@somedomain.com|xxx-xxx-xxx
表依赖
dependent_id|first_name|last_name|relationship|emp_id
1|ruby|nicholas|wife|1
现在,我想从数据库 A 和数据库 B 中读取数据并写入一个名为 C 的新数据库,该数据库具有与 A 和 B 相同的表定义。这必须在维护子关系的同时完成。
数据库 C
表员工
emp_Id|first_name|last_name|email|phn
1|john|doe|john.doe@somedomain.com |xxx-xxx-xxx
2|mike|jenning|mike.jenning@somedomain.com|xxx-xxx-xxx
表依赖
dependent_id|first_name|last_name|relationship|emp_id
1|lilly|francis|wife|1
2|ruby|nicholas|wife|2
我正在寻找可以使用 JAVA 设计的可能解决方案。我可以考虑从数据库 A 读取数据并将其写入数据库 C 并类似地从数据库 B 读取并将其写入数据库 C,但是我还没有想出一种方法来在写入来自 A 和 B 的数据时维护子关系到数据库 C.
解决方案
推荐阅读
- javascript - 如何从 JavaScript 函数调用 Angular 4 方法?
- c# - 如何获得跨度
不带 unsafe 关键字的结构视图 - verilog - 在verilog中注册和重置卷积输出
- android - Android FloatingActionButton OnClickListener 不起作用
- ballerina - 我可以获得联合类型变量的实际类型吗?
- sql - 我可以在访问 VBA 中使用 FULL OUTER JOIN 吗?
- janusgraph - JanusGraph 中的处理属性值不一致
- docker - 在 docker 中为独立命令更智能地构建缓存
- .net - 如何通过 Global.asax.cs 文件中的 Access-Control-Allow-Origin 允许多个源域?
- vba - 如何在不使用数据集中的表格的情况下根据列中的某个单词锁定整行