Я искал и искал ответ на этот вопрос, но пришел с пустыми руками. Я надеюсь, что кто-то может указать мне в направлении твердого примера.
Я разработал модульную систему, в которой данные хранятся в нескольких базах данных MySQL.
Я использую объекты PDO для подключения к базе данных с помощью PHP. Мне нужно выполнить запрос JOIN для двух разных баз данных, но мои объекты PDO инициализированы для конкретной базы данных. Я попытался использовать абсолютную ссылку ‘dbName.tableName.field.Name’, как это было бы выполнено с использованием устаревшей функции mysql_query (), но не повезло.
Можно ли выполнить запрос JOIN для нескольких баз данных, используя PDO?
Использование: У меня есть база данных персонала и база данных документов. При перечислении всех документов возвращается внешний ключ — StaffID. Мне нужно перевести это на имя персонала, используя таблицу персонала.
Вы должны убедиться, что у вас есть тот же пользователь, который имеет доступ ко всем вашим базам данных.
JOIN должен указывать полное имя database.table:
SELECT * FROM database_1.table1 AS d1 LEFT JOIN database_2.table2 AS d2
ON d1.someIDField = d2.someIDField;
Других решений пока нет …