【问题标题】:PDO Join Query with Multple Databases in PHP在 PHP 中使用多个数据库进行 PDO 连接查询
【发布时间】:2016-02-01 17:08:36
【问题描述】:

我已经搜索并搜索了有关此问题的答案,但空手而归。我希望有人可以为我指明一个可靠示例的方向。

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

我正在使用 PDO 对象通过 PHP 连接到数据库。我需要跨两个不同的数据库执行 JOIN 查询,但我的 PDO 对象是为特定数据库初始化的。我尝试使用绝对引用“dbName.tableName.field.Name”,就像使用已弃用的 mysql_query() 函数执行的那样,但没有运气。

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

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

【问题讨论】:

    标签: php mysql join pdo multiple-databases


    【解决方案1】:

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

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

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

    【讨论】:

    • 你明白了!问题在于访问限制以及我自己未能将 WHERE 子句放在 JOIN 之后。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-27
    • 2013-05-14
    • 2012-09-17
    • 2011-05-17
    • 1970-01-01
    相关资源
    最近更新 更多