user137481 Asked: 2021-05-13 15:08:25 +0800 CST2021-05-13 15:08:25 +0800 CST 2021-05-13 15:08:25 +0800 CST 使用 IBM Data Studio 进行跨数据库查询 772 我目前正在使用 IBM Data Studio 4.1 对 DB2 LUW 数据库运行查询。我的理解是,我可以通过为数据库名称添加前缀来进行跨数据库查询。 例如,database.schema.table。 但是,当我打开 SQL 查询窗口时,有一个下拉菜单要求用户选择数据库连接。由于它只允许一个数据库连接,我们如何在 IBM Data Studio 中运行跨数据库查询? db2 db2-luw 2 个回答 Voted Best Answer mustaccio 2021-05-13T15:42:28+08:002021-05-13T15:42:28+08:00 要执行任何 SQL 语句,您必须连接到某个数据库服务器;Data Studio 不执行 SQL 语句。随后,要使三部分名称 ( <server>.<schema>.<object>) 正常工作,您所连接的服务器必须知道该<server>部分是什么。 在访问属于同一 Db2 for LUW 数据库实例的数据库中的对象的简单情况下,<server>是另一个数据库名称,不需要额外的设置。 但是,如果另一个表位于由不同实例管理的数据库中,或者如果它属于不同的 DBMS(Db2 for z/OS、Oracle 等),您将需要设置一个联合数据源,其名称然后,您将使用 for <server>。 Oliver 2021-05-14T21:53:04+08:002021-05-14T21:53:04+08:00 我不熟悉 DataStudio - 它们是市场上的其他工具,例如https://dbeaver.com/databases/或https://www.dbvis.com。他们是最后提到的工具 https://support.dbvis.com/support/solutions/articles/1000196586-can-i-access-tables-across-multiple-databases-within-one-statement PS 我同意的解决方法- mustaccio - 最好的方法是设置联合 - 取决于许可证问题的 https://www.ibm.com/docs/en/db2/11.1?topic=editions-functionality-in-db2-product-db2-offerings
要执行任何 SQL 语句,您必须连接到某个数据库服务器;Data Studio 不执行 SQL 语句。随后,要使三部分名称 (
<server>.<schema>.<object>
) 正常工作,您所连接的服务器必须知道该<server>
部分是什么。在访问属于同一 Db2 for LUW 数据库实例的数据库中的对象的简单情况下,
<server>
是另一个数据库名称,不需要额外的设置。但是,如果另一个表位于由不同实例管理的数据库中,或者如果它属于不同的 DBMS(Db2 for z/OS、Oracle 等),您将需要设置一个联合数据源,其名称然后,您将使用 for
<server>
。我不熟悉 DataStudio - 它们是市场上的其他工具,例如https://dbeaver.com/databases/或https://www.dbvis.com。他们是最后提到的工具 https://support.dbvis.com/support/solutions/articles/1000196586-can-i-access-tables-across-multiple-databases-within-one-statement PS 我同意的解决方法- mustaccio - 最好的方法是设置联合 - 取决于许可证问题的 https://www.ibm.com/docs/en/db2/11.1?topic=editions-functionality-in-db2-product-db2-offerings