我有2个数据库。用户数据库和购买数据库。每个数据库都有不同的用户和密码。
如果我想执行查询来调用两个数据库。如何连接数据库?
$db = mysql_select_db(??????);
答案 0 :(得分:1)
您不必关心选择哪个数据库,因为您在查询中向MySQL提供了数据库名称。
即
SELECT * FROM db.table, db2.table
因此,无论您选择哪种数据库,它都不会改变。
答案 1 :(得分:1)
$db1 = mysql_connect($host1, $user1, $pass1);
mysql_select_db($db1, 'database1');
$db2 = mysql_connect($host2, $user2, $pass1);
mysql_select_db($db2, 'database2');
$query = "SELECT * FROM test";
mysql_query($db1, $query);
mysql_query($db2, $query);
编辑:好的,现在我理解了这个问题(阅读其他答案的评论): 如果您没有权限,则无法执行连接2个数据库的语句。 如果您的用户有权从两个数据库中进行选择,则可以通过
进行SELECT * FROM db1.table, db2.table
答案 2 :(得分:0)
两次调用mysql_connect()并将结果存储在变量中。然后可以将该变量发送到php中的每个mysql_ *调用,告诉你哪一个是你引用的两个。 看看mysql_select_db()的第二个参数,你会明白的。
编辑这样,您当然无法在同一个查询中使用它们,但除非您的数据库用户已授予对它们的访问权限,否则我认为这是您唯一的选择。< / p>