我们最近将大型DB2数据库迁移到了新服务器。在迁移过程中,它进行了很多调整,例如将10年的数据缩减为3。但是现在我发现,在纳税季节结束之前,我需要从旧服务器获取某些数据。
如何在DBeaver中运行一个UNION
查询,该查询从两个不同的连接中提取数据。
FROM
和JOIN
关键字中的表标识符的正确语法是什么?
我在常规SQL工作中使用DBeaver,但是我无法确定如何在两个不同的连接上跨越UNION
查询。但是,我也使用Microsoft Access,在那里我通过两个传递给本地Microsoft Access联合查询的传递查询轻松地做到了这一点。
但是如何在DBeaver中做到这一点?我不明白如何同时使用两个连接。
例如,这是我的联系:
我需要这样的东西...
SELECT *
FROM ASP7.F_CERTOB.LDHIST
UNION
SELECT *
FROM OLD.VIPDTAB.LDHIST
...但是我收到以下错误,我对它说“不开玩笑!这就是我想要的!”,大声笑... =-)
SQL Error [56023]: [SQL0512] Statement references objects in multiple databases.
这怎么办?。
答案 0 :(得分:2)
这不是DBeaver的功能。 DBeaver只能访问数据库提供的数据,并且一次只能将其限制为单个连接(保存导入/导出操作)。此功能为being considered for development,因此请注意此答案在2019年的某个时候过时。
您可以使用DBeaver从OLD数据库中导出数据并将其导入ASP7(尽管为此通常使用供应商工具更为有效)。然后,您可以按照建议进行合并。
许多RDBMS提供了一种逻辑访问外部数据库的方式,就好像它们是本地的一样,在这种情况下,DBeaver便能够访问OLD数据库中的数据(就这种情况而言,就DBeaver而言,所有数据都是来自单个连接)。例如,在Postgres中,可以使用外部数据包装器来访问外部数据。
我对DB2不熟悉,但是Google的快速搜索建议您可以使用nicknames或three-part-names在DB2中建立外部连接。