2016-02-29 4 views
0

У меня есть 2 базы данных и 2 пользователя. db1 (база данных) -> пользователь1 (пользователь) -> таблица1 (таблица) db2 (база данных) -> пользователь2 (пользователь) -> таблица2 (таблица) Теперь я хочу сделать соединение между таблицей 1 & table2. Итак, сначала я предоставил разрешение select для таблицы1 для пользователя2. После этого я вошел в систему db1 с использованием учетных данных user2 и запустил . Выберите * from db1.user1.table1, он сработал. Затем я попытался получить доступ к таблице2, сделав это . Выберите * from db2.user2.table2. Но на этот раз он выдает сообщение об ошибке «db2.user2.table2» - это неопределенное имя. Я хотел бы достичь чего-то подобного db1.user1.table1 join db2.user2.table2.Доступ к нескольким базам данных в одном запросе выбора db2

DB2 версии: 10.5 (Fix Pack 3) Операционная система: Windows 7

+0

Что вы хотите сказать? Вы можете также упомянуть о версии и платформе DB2. – mustaccio

+0

В зависимости от того, какая версия DB2 вы используете, она будет работать. http://blog.4loeser.net/2013/09/oracle-dblink-and-db2-three-part-names.html –

+0

см. в редакции –

ответ

0

Если таблицы действительно в отдельных баз данных, то вам необходимо будет использовать федерацию, чтобы иметь возможность объединения таблиц между 2 базы данных. См. this documentation

Возможно, вам захочется рассмотреть, должны ли эти таблицы находиться в одной базе данных только в отдельных схемах. Это позволит вам напрямую присоединиться.

Смежные вопросы