3

基本上我需要通过 jdbc 运行以下查询。两个数据库都是 MySQL 并且在同一台服务器上。

SELECT * FROM DB1.ACCOUNT a
JOIN DB2.ITEM i ON a.AccountID = i.AccountID

我的 jdbc 连接是这样设置的:

Class.forName("com.mysql.jdbc.Driver").newInstance();
DB1 = DriverManager.getConnection("jdbc:mysql://serverloc.com:3300/DB1", "username", "password");
DB2 = DriverManager.getConnection("jdbc:mysql://serverloc.com:3300/DB2", "username", "password");

这是我遇到问题的地方。我现在可以针对 DB1 或 DB2 创建一个语句,但是我找不到针对这两个数据库进行 JOIN 的方法。我已经尝试针对其中一个数据库(如下)运行我的查询,但它返回 null。

Statement statement = DB1.createStatement();
ResultSet resultSet = statement.executeQuery(" QUERY HERE ");

我已经看到您可以使用 UnityJDBC 跨数据库运行 JOIN 查询,但我正在寻找免费/开源选项。

谢谢!

4

1 回答 1

4

1) 是的,您可以在 mySQL 中的两个不同数据库之间“加入”。

2)不,你不需要两个不同的连接来做到这一点。

例如:

于 2012-09-28T20:22:54.673 回答