猿问

如何在一个网页上连接多个MySQL数据库?

如何在一个网页上连接多个MySQL数据库?

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

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

$dbh = mysql_connect($hostname, $username, $password) 
        or die("Unable to connect to MySQL");

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


白衣非少年
浏览 926回答 3
3回答

呼唤远方

如果您使用PHP 5(考虑到PHP 4已被废弃),您应该使用PDO因为这正在慢慢成为新的标准。PDO的一个(非常)重要的好处是它支持绑定参数,这使得代码更加安全。您可以通过PDO连接,如下所示:try {   $db = new PDO('mysql:dbname=databasename;host=127.0.0.1', 'username', 'password');} catch (PDOException $ex) {   echo 'Connection failed: ' . $ex->getMessage();}(当然,请替换上面的数据库名、用户名和密码)然后,您可以像这样查询数据库:$result = $db->query("select * from tablename");foreach ($result as $row) {   echo $row['foo'] . "\n";}或者,如果你有变量:$stmt = $db->prepare("select * from tablename where id = :id");$stmt->execute(array(':id' => 42));$row = $stmt->fetch();如果需要同时打开多个连接,可以简单地创建多个PDO实例:try {   $db1 = new PDO('mysql:dbname=databas1;host=127.0.0.1', 'username', 'password');   $db2 = new PDO('mysql:dbname=databas2;host=127.0.0.1', 'username', 'password');} catch (PDOException $ex) {   echo 'Connection failed: ' . $ex->getMessage();}

慕森王

我只是把我的生活变得简单了:CREATE VIEW another_table AS SELECT * FROM another_database.another_table;希望能帮上忙.。干杯.。
随时随地看视频慕课网APP
我要回答