ホームページ  >  記事  >  バックエンド開発  >  PHP で複数の mysql データベースを同時に接続するサンプル コード_PHP チュートリアル

PHP で複数の mysql データベースを同時に接続するサンプル コード_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:35:41772ブラウズ

例:

コードをコピーします コードは次のとおりです:

$conn1 = mysql_connect("127.0.0.1", "root","root","db1"); ("db1 ", $conn1);
$conn2 = mysql_connect("127.0.0.1", "root","root","db2");
mysql_select_db("db2", $conn2); "select * from ip";
$query = mysql_query($sql);
if($row = mysql_fetch_array($query))
echo $row[0]."n"; web ";
$query = mysql_query($sql);
if($row = mysql_fetch_array($query))
echo $row[0];
?>


このコードには問題があり、プログラムの実行時にエラーが報告されます: PHP 警告: mysql_fetch_array() はパラメーター 1 がリソース、... で指定されたブール値であることを期待しています。

原因分析:
プログラムは 2 つのデータベース リンク、関数 mysql_query() の確立を開始します。プロトタイプ:

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

指定された接続識別子に関連付けられたサーバー内の現在アクティブなデータベースにクエリを送信します。 link_identifier が指定されていない場合は、最後に開かれた接続が使用されます。開いている接続がない場合、この関数はパラメータなしで mysql_connect() 関数を呼び出し、接続を確立して使用しようとします。クエリ結果はキャッシュされます。

この例では、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); mysql_connect("127.0.0.1", " root","root","db2");
mysql_select_db("product", $conn2);

$sql = "select * from ip"; $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 パラメータの 2 番目の部分、つまり



コードをコピー

コードは次のとおりです:

$conn1 = mysql_connect("127.0.0.1", "root","root","db1");
mysql_select_db( "db1", $conn1); $conn2 = mysql_connect("127.0.0.1", "root","db2"); mysql_select_db("db2", $conn2); $sql = " select * from db1.ip" //関連データベース $query = mysql_query($sql);
if($row = mysql_fetch_array);
echo $row[0]."n";

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





http://www.bkjia.com/PHPjc/742452.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/742452.html
技術記事

例: 次のようにコードをコピーします。 ?php $conn1 = mysql_connect("127.0.0.1", "root","root","db1"); mysql_select_db("db1", $conn1); 127.0 .0.1"、"ルート"、"ルート"...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。