如何用 JDBC 进行跨库查询
例题描述和简单分析
有两个 MySQL 数据库,MySQL_A 中,有雇员表 employee,数据如下所示:
MySQL_B中,有家庭成员表 famliy,数据如下所示:
需要使用 JDBC 进行跨库关联查询,通过员工号 EID 进行关联后,查看员工 ENAME 与其家庭成员 FNAME 的关系 RELATION,结果如下:
解法及简要说明
在集算器中编写脚本 p1.dfx,如下所示:
A |
|
1 |
=connect("MySQL_A") |
2 |
=connect("MySQL_B") |
3 |
=A1.query@x("select * from employee") |
4 |
=A2.query@x("select * from family") |
5 |
=join(A3:Employee,EID;A4:Familymembers,EID) |
6 |
=A5.new(Employee.NAME:ENAME,Familymembers.NAME:FNAME,Familymembers.RELATION) |
简要说明:
A1 连接数据库 MySQL_A
A2 连接数据库 MySQL_B
A3 读取 MySQL_A 的 employee 表
A4 读取 MySQL_B 的 family 表
A5 两者根据 EID 关联
A6 获取员工 ENAME 与其家庭成员 FNAME 的关系 RELATION
JAVA 集成这段代码的方法可参考:《Java 如何调用 SPL 脚本》。
英文版