如何选择多个数据库

时间:2011-04-13 07:13:17

标签: php mysql

我想在浏览器中显示数据。我已经从数据库中检索了数据,但是当我调用mysql_select_db时,它只接受一个数据库。但我的数据来自不同的数据库。

我如何选择它们? 如果我正在编写mysql_select_db,它只占用一个数据库。如果我使用的是mysql_select_db,它接受但是结果不会在浏览器中显示。它显示最大执行时间为30秒..如果我在1个数据库上工作,结果显示在浏览器中,但是当我尝试在同一个连接中链接多个数据库时问题就出现了。

当我尝试在单个数据库中链接2表时也出现同样的问题。但是如果我使用单个表而没有与其他表链接而不是结果正在进行

3 个答案:

答案 0 :(得分:3)

您需要打开两个不同的连接

$con1 = mysql_connect($server1, $user1, $pass1);
mysql_select_db($con1);

$con2 = mysql_connect($server2, $user2, $pass2);
mysql_select_db($con2);

$query1 = mysql_query($sql1, $con1);
$query2 = mysql_query($sql2, $con2);

编辑:

如果您的数据库都可通过一个连接访问:

假设你有两个不同的数据库,db1和db2

$sql1 = "SELECT * FROM db1.myTable WHERE something ";
$sql2 = "SELECT * FROM db2.myOtherTable WHERE something ";

答案 1 :(得分:1)

您可以使用数据库名称(SELECT * FROM db1.table; SELECT * FROM db2.table)限定查询,也可以运行第一个查询,将结果存储到PHP数组,调用mysql_select_db()并运行第二个查询。

第一种方法更灵活,因为如果你愿意,你可以做跨数据库连接之类的事情(不能保证跨数据库连接的执行情况)。

答案 2 :(得分:0)

首先,从第一个数据库获取数据,然后为第二个数据库调用mysql_select_db,然后从第二个数据库中获取值。您可以在需要数据的数据库之间来回移动,只需在调用php mysql函数之前为该数据库调用mysql_select_db

相关问题