PHP 中的跨資料庫查詢:打破障礙
在上一集中,在 MySQL 中建立跨資料庫查詢成為可能。然而,由於 mysql_select_db 的限制,將這些知識轉換為 PHP 遇到了障礙。
選項和限制
PHP 中可用的選項有:
需要為每個查詢指定資料庫,這是繁瑣且不切實際的。
解決方案
$db = mysql_connect($hots, $user, $password); mysql_select_db('my_most_used_db', $db); $q = mysql_query(" SELECT * FROM table_on_default_db a, `another_db`.`table_on_another_db` b WHERE a.id = b.fk_id ");
克服這些限制並執行跨資料庫查詢在 PHP中,我們可以利用以下方法:
先決條件
$db1 = mysql_connect($host1, $user1, $password1); $db2 = mysql_connect($host2, $user2, $password2); $q1 = mysql_query(" SELECT id FROM table WHERE [..your criteria for db1 here..] ", $db1); $tmp = array(); while($val = mysql_fetch_array($q1)) $tmp[] = $val['id']; $q2 = mysql_query(" SELECT * FROM table2 WHERE fk_id in (".implode(', ', $tmp).") ", $db2);
此方法要求兩個資料庫駐留在同一台主機上。如果它們位於不同的主機上,則無法直接加入。在這種情況下,您可以執行兩個單獨的查詢:
透過使用此方法,您可以輕鬆地在 PHP 中執行跨資料庫查詢,擴展資料庫互動的能力。以上是如何在PHP中執行跨資料庫查詢?的詳細內容。更多資訊請關注PHP中文網其他相關文章!