澳门新浦京app下载PHP同时连接多个mysql数据库示例代码

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

实例:

区别就不说了,看了上面的实例就知道了,主要是多了一个mysql_select_db的区别,关于性能方面自PHP
4.0.6 起不提倡使用此函数。不要用此函数,用mysql_select_db()
和mysql_query() 来替代

实例:

复制代码 代码如下:

mysql教程_db_query 与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);

mysql_db_query
/*
mysql_db_query语法: int mysql_db_query(string database, string
query, int [link_identifier]);
mysql_db_query函数用来送出查询字符串 (query) 到后端的 MySQL
数据库教程中。而可省略的参数 link_identifier
若不存在,程序会自动寻找其它 mysql_connect()
连接后的连接代码。发生错误时会返回 false

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

$sql = “select * from ip”;
$query = mysql_query($sql);
if($row = mysql_fetch_array($query))
echo $row[0].”n”;

*/

mysql_select_db(db1, $conn1);

$sql = “select * from web “;
$query = mysql_query($sql);
if($row = mysql_fetch_array($query))
echo $row[0];
?>

$server =’www.bKjia.c0m’;

if (!$link = mysql_connect($server, ‘mysql_user’,
‘mysql_password’)) {
    echo ‘Could not connect to mysql’;
    exit;
}
else
{
 $query = mysql_db_query(‘db’,$sql,$link);
 if( $query )
 {
  while ($row = mysql_fetch_assoc($query)) {
   echo $row[‘foo’];
  }  
  mysql_free_result($query);
 }
 else
 {
  echo “DB Error, could not query the databasen”;
  echo ‘MySQL Error: ‘ . mysql_error();
  exit;

 }
}

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

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

//下面来看看关于 mysql_query函数实例

mysql_select_db(db2, $conn2);

原因分析:

mysql_query
$cn = mysql_connect($server,’root’,’root’);
mysql_select_db(‘db’,$cn); //我们用mysql_db_query这里不要设置
$result = mysql_query( $sql );
while ($rs = mysql_fetch_array($result))
{
 echo $row[‘foo’];
}  
mysql_free_result($result);
/*

$sql = select * from ip;

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

区别就不说了,看了上面的实例就知道了,主要是多了一个mysql_select_db的区别,关于性能方面自PHP
4.0.6 起不提倡使用此函数。不要用此函数,用mysql_select_db()
和mysql_query() 来替代

$query = mysql_query($sql);

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

本站原创教程转载注明来源php教程er/php.html”>
*/
?>

if($row = mysql_fetch_array($query))

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

4.0.6 起不提倡使用此函数。不要用此函数…

echo $row[0]. ;

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

$sql = select * from web ;

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

$query = mysql_query($sql);

复制代码 代码如下:

if($row = mysql_fetch_array($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);

echo $row[0];

$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];
?>

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

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

原因分析:

复制代码 代码如下:

程序开始建立两个数据库链接,函数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);

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

$sql = “select * from db1.ip”; //关联数据库
$query = mysql_query($sql);
if($row = mysql_fetch_array($query))
echo $row[0].”n”;

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

$sql = “select * from db2.web “;
$query = mysql_query($sql);
if($row = mysql_fetch_array($query))
echo $row[0];
?>

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

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

代码如下:

$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]. ;

$sql = select * from web ;

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

if($row = mysql_fetch_array($query))

echo $row[0];

?

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

代码如下:

$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]. ;

$sql = select * from db2.web ;

$query = mysql_query($sql);

if($row = mysql_fetch_array($query))

echo $row[0];

?

You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图