您当前的位置: 首页 > 网站编程 > PHP教程 > PHP同时连接多个mysql数据库示例代码

PHP同时连接多个mysql数据库示例代码

作者:不详 来源:网络 发布时间: 2014-08-07 18:11 点击:
这篇文章主要介绍了PHP同时连接多个mysql数据库的具体实现,需要的朋友可以参考下 实例: 代码如下: ?php $conn1 = mysql_connect(127.0.0.1, root,root,db1); mysql_select_db(db1, $conn1); $conn2 = mysql_connect(127.0.0.1, root,root,db2); mysql_select_db(db2,

PHP同时连接多个mysql数据库示例代码

  这篇文章主要介绍了PHP同时连接多个mysql数据库的具体实现,需要的朋友可以参考下

  实例:

  代码如下:

  <?php

  $conn1 = mysql_connect("127.0.0.1", "root","root","db1");

  mysql_select_db("db1", $conn1);

  $conn2 = mysql_connect("127.0.0.1", "root","root","db2");

  mysql_select_db("db2", $conn2);

  $sql = "select * from ip";

  $query = mysql_query($sql);

  if($row = mysql_fetch_array($query))

  echo $row[0]."n";

  $sql = "select * from web ";

  $query = mysql_query($sql);

  if($row = mysql_fetch_array($query))

  echo $row[0];

  ?>

  这段代码存在问题,在程序执行时会报错:PHP Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in ....

  原因分析:

  程序开始建立两个数据库链接,函数mysql_query()原型:

  resource mysql_query ( string $query [, resource $link_identifier ] )

  向与指定的连接标识符关联的服务器中的当前活动数据库发送一条查询。如果没有指定 link_identifier,则使用上一个打开的连接。如果没有打开的连接,本函数会尝试无参数调用 mysql_connect() 函数来建立一个连接并使用之。查询结果会被缓存。

  在本例中由于没有指定link_identifier,所以,在执行第一条sql时,默认使用的是上一个打开的链接,即$conn2,而实际上第一条sql语句应该使用的是$conn1,所以导致报错,所以为了能够链接多个mysql数据库,可以使用如下方法:

  方法1:在mysql_query函数中指定所用连接,即:

  代码如下:

  <?php

  $conn1 = mysql_connect("127.0.0.1", "root","root","db1");

  mysql_select_db("Muma", $conn1);

  $conn2 = mysql_connect("127.0.0.1", "root","root","db2");

  mysql_select_db("product", $conn2);

  $sql = "select * from ip";

  $query = mysql_query($sql,$conn1); //添加连接$conn1

  if($row = mysql_fetch_array($query))

  echo $row[0]."n";

  $sql = "select * from web ";

  $query = mysql_query($sql, $conn2);

  if($row = mysql_fetch_array($query))

  echo $row[0];

  ?>

  方法2:在sql语句中关联所用数据库,此时可以省略mysql_query的第二个参数,即:

  代码如下:

  <?php

  $conn1 = mysql_connect("127.0.0.1", "root","root","db1");

  mysql_select_db("db1", $conn1);

  $conn2 = mysql_connect("127.0.0.1", "root","root","db2");

  mysql_select_db("db2", $conn2);

  $sql = "select * from db1.ip"; //关联数据库

  $query = mysql_query($sql);

  if($row = mysql_fetch_array($query))

  echo $row[0]."n";

  $sql = "select * from db2.web ";

  $query = mysql_query($sql);

  if($row = mysql_fetch_array($query))

  echo $row[0];

  ?>
分享到:
本文"PHP同时连接多个mysql数据库示例代码"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4