php网页连mysql_php - 如何在单个网页上连接多个MySQL数据库?

php - 如何在单个网页上连接多个MySQL数据库?

我将信息分散在几个数据库中,并希望使用PHP将所有信息放到一个网页上。 我想知道如何连接到单个PHP网页上的多个数据库。

我知道如何使用以下方法连接到单个数据库:

$dbh = mysql_connect($hostname, $username, $password)

or die("Unable to connect to MySQL");

但是,我可以使用多个“mysql_connect”命令来打开其他数据库,如果我连接了多个数据库,那么PHP如何知道我希望从中获取信息的数据库。

JoshFinnie asked 2019-04-09T05:23:13Z

11个解决方案

320 votes

您可以多次调用SELECT * FROM database2.tablename,但如果参数相同,则需要为'$new_link'(第四个)参数传递true,否则将重用相同的连接。 例如:

$dbh1 = mysql_connect($hostname, $username, $password);

$dbh2 = mysql_connect($hostname, $username, $password, true);

mysql_select_db('database1', $dbh1);

mysql_select_db('database2', $dbh2);

然后查询数据库1传递第一个链接标识符:

mysql_query('select * from tablename', $dbh1);

对于数据库2传递第二个:

mysql_query('select * from tablename', $dbh2);

如果您没有传递链接标识符,则使用最后创建的连接(在本例中为SELECT * FROM database2.tablename表示的连接),例如:

mysql_query('select * from tablename');

其他选择

如果MySQL用户可以访问两个数据库并且它们位于同一主机上(即两个数据库都可以从同一个连接访问),您可以:

保持一个连接打开,并根据需要调用SELECT * FROM database2.tablename进行交换。 我不确定这是一个干净的解决方案,你最终可能会查询错误的数据库。

在查询中引用表时指定数据库名称(例如SELECT * FROM database2.tablename)。 实施这可能是一种痛苦。

另请阅读troelskn的答案,因为如果您能够使用PDO而不是旧的扩展,这是一种更好的方法。

Tom Haigh answered 2019-04-09T05:24:17Z

92 votes

如果您使用PHP5(并且您应该,因为PHP4已被弃用),您应该使用PDO,因为这正逐渐成为新标准。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值