在过去的一个小时里,我一直在研究这个问题,但还没有想出一个不涉及一些奇怪的导出/导入的简单解决方案。
我要做的就是打开与两个数据库的 PDO 连接,以便我可以在查询中使用它们。
Stack Overflow 中似乎对此存在分歧。
一个答案:
...如果您想在运行时同时使用这两个 PDO 对象,则需要为单独的连接创建两个 PDO 对象。
但其他人似乎建议您可以在查询中“使用”两个数据库:
$sql = "SELECT * FROM dbname.tablename";
$sql = "SELECT * FROM anotherdbname.anothertablename"
除了在我的 PDO 连接函数中明确定义的数据库之外,我尝试在另一个数据库上执行 SELECT 命令。我懂了:
致命错误:未捕获异常 'PDOException' 并带有消息 'SQLSTATE[42000]:语法错误或访问冲突:1142 SELECT 命令拒绝用户 'dbusername'@'localhost' 用于表 'table_name'
我确保将用户添加到两个数据库并授予完全权限。
是否可以在同一连接中使用两个数据库的查询?还是您必须设置两个不同的对象?