Maison  >  Article  >  développement back-end  >  Comment interroger deux bases de données en utilisant PHP

Comment interroger deux bases de données en utilisant PHP

PHPz
PHPzoriginal
2023-03-31 10:26:471247parcourir

PHP est un langage de script open source principalement utilisé côté serveur, souvent utilisé pour le développement Web. Il présente les avantages d'être facile à apprendre, facile à utiliser et d'une efficacité de développement élevée, et a été largement utilisé dans le développement de sites Web. Dans le développement réel, vous pouvez rencontrer des situations dans lesquelles vous devez interroger plusieurs bases de données. Cet article explique comment utiliser PHP pour interroger deux bases de données.

1. Connectez-vous à la base de données

En PHP, la connexion à la base de données utilise généralement l'extension mysqli et l'extension PDO. Cet article utilise l'extension mysqli à des fins de démonstration.

Créez d'abord deux bases de données, nommées respectivement db1 et db2, et créez-y respectivement une table d'étudiant et une table d'enseignant. Les deux tables contiennent des champs tels que l'identifiant, le nom, l'âge, etc. Connectez ensuite les deux bases de données dans le code PHP et interrogez les données des deux tables. Le code est le suivant :

//Connectez la base de données db1
$mysqli1 = new mysqli("localhost", "root). ", " Mot de passe", "db1");

//Connectez-vous à la base de données db2
$mysqli2 = new mysqli("localhost", "root", "Password", "db2");

//Interrogez le table student dans la base de données db1
$sql1 = "SELECT * FROM student";
$result1 = $mysqli1->query($sql1);
while ($row1 = $result1->fetch_assoc()) {

//输出db1数据库中的student表的数据
echo "db1中student表的数据:" . $row1['id'] . " " . $row1['name'] . " " .$row1['age'].  "<br/>";

}

// Interrogez la table professeur dans la base de données db2
$sql2 = "SELECT * FROM professeur";
$result2 = $mysqli2->query($sql2);
while ($row2 = $result2-> ;fetch_assoc()) {

//输出db2数据库中的teacher表的数据
echo "db2中teacher表的数据:" . $row2['id'] . " " . $row2['name'] . " " .$row2['age'].  "<br/>";

}
?>

Dans le code ci-dessus, utilisez d'abord mysqli pour essayer de vous connecter aux deux bases de données db1 et db2, puis interrogez les données d'une table chacune et affichez-les sur le page. Une boucle while est utilisée pour sortir les données ligne par ligne.

2. Utilisez la même connexion pour interroger deux bases de données

Après vous être connecté à une base de données, vous pouvez utiliser l'objet de connexion pour interroger plusieurs bases de données. Ajoutez simplement le nom de la base de données avant les noms de table des autres bases de données. L'exemple de code est le suivant :

//Connectez-vous à la base de données db1
$mysqli = new mysqli("localhost", "root", "password", "db1");

//Requérez le table étudiant dans db1
$sql1 = "SELECT * FROM student";
$result1 = $mysqli->query($sql1);
while ($row1 = $result1->fetch_assoc()) {

//输出db1中的student表的数据
echo "db1中student表的数据:" . $row1['id'] . " " . $row1['name'] . " " .$row1['age']. "<br/>";

}

// Interrogez la table des enseignants dans db2
$sql2 = "SELECT * FROM db2.teacher";
$result2 = $mysqli->query($sql2);
while ($row2 = $result2->fetch_assoc ()) {

//输出db2中的teacher表的数据
echo "db2中teacher表的数据:" . $row2['id'] . " " . $row2['name'] . " " .$row2['age']. "<br/>";

}
?>

Dans le code ci-dessus, une seule connexion mysqli est utilisée, mais plusieurs bases de données peuvent être interrogées. Ceci peut être réalisé en utilisant "." pour connecter le nom de la bibliothèque et le nom de la table.

3. Résumé

Cet article présente comment utiliser PHP pour interroger deux bases de données et propose deux méthodes. La première méthode consiste à utiliser l'extension mysqli pour établir plusieurs connexions pour les requêtes, et la deuxième méthode consiste à utiliser le même objet de connexion pour interroger plusieurs bases de données. En développement réel, choisissez la méthode appropriée en fonction des besoins spécifiques.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn