PHP多数据库连接

时间:2010-12-08 20:25:09

标签: php mysql database

<?
    $db1 = mysql_connect("localhost","root","root") or dir("can not connect Mysql Server");
    mysql_select_db("1",$db1) or dir("Can not connect to the MySQL Server.");

    $db2 = mysql_connect("localhost","root","root") or dir("can not connect Mysql Server");
    mysql_select_db("2",$db2) or dir("Can not connect to the MySQL Server.");
?>

$result = mysql_query("SELECT * FROM db1.tags WHERE db1.catalog='fresh tag' ");

如果我从多数据库连接,如何从db1进行MySQL查询?

7 个答案:

答案 0 :(得分:8)

在查询中指定它。

$result = mysql_query($query, $db1);

如果省略第二个参数($ db1),它将使用最后定义的资源($ db2)

答案 1 :(得分:2)

查看manual

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

就像您已为mysql_select_db()所做的那样,您可以将连接指定为第二个参数。

答案 2 :(得分:2)

mysql_query的第二个参数是连接资源。它会查询该连接。

答案 3 :(得分:2)

请参阅mysql_query文档。您只需传入link_identifier作为第二个参数。

$result = mysql_query("SELECT * FROM db1.tags WHERE db1.catalog='fresh tag'", $db1);

答案 4 :(得分:1)

使用

mysql_query($query, $db1);

mysql_select_db();

答案 5 :(得分:1)

如果他们都在localhost中,则无需连接2次。你可以简单地做这样的事情:

SELECT * FROM db2.tags WHERE id IN(SELECT id FROM db1.tags WHERE id=1)

通过这种方式,您可以在不进行两次连接的情况下比较两个数据库。

现在如果你没有在同一个地方,那么你可以这样做:

mysql_select_db(db1);
$db1Result = mysql_query("SELECT * FROM db1.tags WHERE id=1");
mysql_select_db(db2);
$db2Result = mysql_query("SELECT * FROM db2.tags WHERE id=1");

然后将$ db1Result的结果与$ db2Result的结果进行比较。

答案 6 :(得分:0)

//get my conn
include "../../database.php";
//put data in
//get data
if($_GET['attribute']!=''){
    //prepare
    $stmt=$conn->prepare('INSERT INTO databasetablename (attribute) VALUES (?)');
    //bind
    $stmt->bind_param('s',$_GET['attribute']);
    //execute
    $stmt->execute();
    $stmt->close();
}

    //print data out
    $res=$conn->query("SELECT attribute FROM databasetablename");
    if($res){
        while($hold = mysqli_fetch_array($res,MYSQL_ASSOC)){
            $record[]=$hold;
            echo $hold['attribute'];
        }
    }
    echo '<hr/>';
    //print out
        foreach($record as $cur){
            echo $cur['attribute'].<br/>;
        }