这是我的查询,它从 2 个不同数据库的 3 个表中选择数据:
SELECT r.id AS id, r.idAccount AS idAccount, r.name AS name, r.surname AS surname, r.company AS company, r.`date` AS date, r.callback_date AS callback_date, u.user_owner_id, c.name
FROM D045618D.`requests_free_demos` AS r
LEFT JOIN D045617D.`user_accounts` AS u ON r.`idAccount` = u.user_id
LEFT JOIN D045618D.`cmsUsers` AS c ON u.`user_owner_id` = c.`id`
WHERE c.`id` = " . $GLOBALS['cmsUser']->id
现在我需要用 PHP 执行该查询。问题是我必须同时打开 2 个数据库,有人知道该怎么做吗?
有没有可能,或者是否有更好的方法来解决这个问题?
谢谢
最佳答案
不,您不需要打开两个数据库。只需执行 mysql_connect
并通过 mysql_query
运行查询。它会正常工作。
只要 (1) 所有表名都完全引用了数据库名称,(2) 两个数据库都在同一台服务器上,并且 (3) 用户可以访问两个数据库,你就可以不需要对它执行mysql_select_db
。所有此类查询都可以正常工作。
关于php - 在php中从多个数据库中读取选定的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4429394/