Atualmente, estou usando o IBM Data Studio 4.1 para executar consultas em bancos de dados DB2 LUW. Meu entendimento é que posso fazer consultas entre bancos de dados prefixando os nomes dos bancos de dados.
Por exemplo, database.schema.table
.
No entanto, quando abro uma janela de consulta SQL, há uma lista suspensa que exige que o usuário selecione a conexão com o banco de dados. Como ele permite apenas uma conexão de banco de dados, como executamos consultas entre bancos de dados no IBM Data Studio?
Para executar qualquer instrução SQL você precisa estar conectado a algum servidor de banco de dados; O Data Studio não executa instruções SQL. Posteriormente, para que o nome de três partes (
<server>.<schema>.<object>
) funcione, o servidor ao qual você está conectado precisa saber qual<server>
é a parte.No caso simples de acessar objetos em um banco de dados que pertence à mesma instância do banco de dados Db2 para LUW ,
<server>
é o outro nome do banco de dados e nenhuma configuração adicional é necessária.No entanto, se a outra tabela estiver em um banco de dados gerenciado por uma instância diferente, ou se pertencer a um DBMS diferente (Db2 para z/OS, Oracle, etc.), será necessário configurar uma fonte de dados federada , cujo nome você usará para
<server>
.Não estou familiarizado com o DataStudio - existem outras ferramentas no mercado como https://dbeaver.com/databases/ ou https://www.dbvis.com . É uma solução alternativa para a última ferramenta mencionada https://support.dbvis.com/support/solutions/articles/1000196586-can-i-access-tables-across-multiple-databases-within-one-statement PS Concordo com - mustaccio - a melhor maneira é a federação de configuração - dependendo do problema da licença https://www.ibm.com/docs/en/db2/11.1?topic=editions-functionality-in-db2-product-db2-offerings