PDO使用PHP中的多个数据库加入查询

时间:2016-02-01 17:08:37

标签: php mysql join pdo multiple-databases

我已经在这个问题上搜索并搜索了答案,但空手而归。我希望有人能指出我一个坚实的例子。

我开发了一个模块化系统,其中数据存储在多个MySQL数据库中。

我正在使用PDO对象使用PHP连接到数据库。我需要跨两个不同的数据库执行JOIN查询,但我的PDO对象是针对特定数据库初始化的。我尝试过使用绝对引用' dbName.tableName.field.Name'将使用不推荐使用的mysql_query()函数执行,但没有运气。

是否可以使用PDO跨多个数据库执行JOIN查询?

用法:我目前有一个Staff数据库和一个文档数据库。列出所有文档将返回外键 - StaffID。我需要使用Staff表将其转换为Staff名称。

1 个答案:

答案 0 :(得分:1)

您必须确保拥有可访问所有数据库的同一用户。

JOIN必须指定完整的database.table名称:

SELECT * FROM database_1.table1 AS d1 LEFT JOIN database_2.table2 AS d2 
ON d1.someIDField = d2.someIDField;