


Einführung in die Durchführung einer gemeinsamen Tabellenabfrage zweier verschiedener Serverdatenbanken in PHP
Für Entwickler, die PHP verwenden, besteht ein häufiges Szenario darin, dass sie gemeinsam Daten aus den Datenbanken zweier verschiedener Server abfragen müssen. Dieses Szenario kann auf geschäftliche Anforderungen zurückzuführen sein oder darauf, dass die Daten auf verschiedene Server verteilt sind. In diesem Artikel wird erläutert, wie dieser Datenföderations-Abfragevorgang in PHP abgeschlossen wird.
1. Bestimmen Sie die für die Abfrage erforderlichen Daten
Bevor wir mit dem Schreiben von Code beginnen, müssen wir die Daten bestimmen, die wir abfragen möchten. Angenommen, wir haben zwei Datenbankdienste mit den Namen A und B. Wir müssen gemeinsam Kundeninformationen aus diesen beiden Datenbanken abfragen, einschließlich Kunden-ID, Name, Alter und Geschlecht. Beide Datenbanken A und B verfügen über Kundentabellen, die jeweils customers_a
und customers_b
sind. Diese Tabellen enthalten grundlegende Informationen über Kunden. customers_a
和customers_b
。这些表都包括客户的基本信息。
我们的查询目标是获取customers_a
和customers_b
中所有客户的信息,因此我们需要在两个表上执行JOIN操作。
2. 连接两个数据库
使用PHP连接两个数据库很容易。下面是连接A数据库的代码示例:
<?php $host = 'localhost'; $username = 'db_user'; $password = 'db_password'; $dbname = 'database_a'; $db_a = new mysqli($host, $username, $password, $dbname); if ($db_a->connect_error) { die('Connect Error (' . $db_a->connect_errno . ') ' . $db_a->connect_error); }
同样地,我们可以连接B数据库:
<?php $host = 'localhost'; $username = 'db_user'; $password = 'db_password'; $dbname = 'database_b'; $db_b = new mysqli($host, $username, $password, $dbname); if ($db_b->connect_error) { die('Connect Error (' . $db_b->connect_errno . ') ' . $db_b->connect_error); }
现在我们已经成功连接到了两个不同的数据库。
3. 执行联合查询操作
接下来,我们需要在两个数据库上执行JOIN操作,获取我们需要的数据。为了保证代码的可读性和易维护性,我们将查询操作封装成一个函数。
<?php function get_customers($db_a, $db_b) { $sql = "SELECT id, name, age, gender FROM customers_a UNION SELECT id, name, age, gender FROM customers_b"; $result = $db_a->query($sql); if (!$result) { die('Query Error: ' . $db_a->error); } $rows = array(); while ($row = $result->fetch_assoc()) { $rows[] = $row; } $result->free(); return $rows; }
在这个函数中,我们使用了UNION操作,将customers_a
和customers_b
中的数据合并在一起。执行完查询之后,我们将结果集中的记录放到一个数组中,并返回该数组。
4. 调用查询函数
现在我们已经完成了所有的代码编写工作。我们可以在代码中调用get_customers
customers_a
und customers_b
zu erhalten, daher müssen wir JOIN-Operationen für die beiden Tabellen ausführen. 2. Zwei Datenbanken verbindenEs ist einfach, zwei Datenbanken mit PHP zu verbinden. Hier ist ein Codebeispiel für die Verbindung mit Datenbank A: <?php
$rows = get_customers($db_a, $db_b);
foreach ($rows as $row) {
echo $row['id'] . ' ' . $row['name'] . ' ' . $row['age'] . ' ' . $row['gender'] . '<br>';
}
Nach dem Login kopieren
Ähnlich können wir eine Verbindung mit Datenbank B herstellen:
<?php $rows = get_customers($db_a, $db_b); foreach ($rows as $row) { echo $row['id'] . ' ' . $row['name'] . ' ' . $row['age'] . ' ' . $row['gender'] . '<br>'; }
<?php $host_a = 'localhost'; $username_a = 'db_user'; $password_a = 'db_password'; $dbname_a = 'database_a'; $host_b = 'localhost'; $username_b = 'db_user'; $password_b = 'db_password'; $dbname_b = 'database_b'; $db_a = new mysqli($host_a, $username_a, $password_a, $dbname_a); if ($db_a->connect_error) { die('Connect Error (' . $db_a->connect_errno . ') ' . $db_a->connect_error); } $db_b = new mysqli($host_b, $username_b, $password_b, $dbname_b); if ($db_b->connect_error) { die('Connect Error (' . $db_b->connect_errno . ') ' . $db_b->connect_error); } function get_customers($db_a, $db_b) { $sql = "SELECT id, name, age, gender FROM customers_a UNION SELECT id, name, age, gender FROM customers_b"; $result = $db_a->query($sql); if (!$result) { die('Query Error: ' . $db_a->error); } $rows = array(); while ($row = $result->fetch_assoc()) { $rows[] = $row; } $result->free(); return $rows; } $rows = get_customers($db_a, $db_b); foreach ($rows as $row) { echo $row['id'] . ' ' . $row['name'] . ' ' . $row['age'] . ' ' . $row['gender'] . '<br>'; } $db_a->close(); $db_b->close(); ?>
customers_a
und customers_b
zusammenzuführen. Nachdem wir die Abfrage ausgeführt haben, fügen wir die Datensätze in der Ergebnismenge in ein Array ein und geben das Array zurück. 🎜🎜4. Rufen Sie die Abfragefunktion auf🎜🎜Jetzt haben wir alle Codierungsarbeiten abgeschlossen. Wir können die Funktion get_customers
im Code aufrufen, um die gemeinsam abgefragten Kundeninformationen aus den beiden Datenbanken A und B zu erhalten. 🎜rrreee🎜5. Vollständiges Codebeispiel🎜🎜Das Folgende ist ein vollständiges Codebeispiel:🎜rrreee🎜Zusammenfassung🎜🎜In PHP ist das Verbinden zweier verschiedener Datenbanken und das Durchführen von Union-Abfrageoperationen ein sehr häufiges Szenario. In diesem Artikel wird beschrieben, wie Sie zwei verschiedene Datenbankdienste in PHP verbinden und die UNION-Operation verwenden, um die gemeinsame Abfrageaufgabe abzuschließen. Wir hoffen, dass die Leser durch diesen Artikel besser verstehen, wie sie mehrere Datenbankdienste in PHP verwenden. 🎜Das obige ist der detaillierte Inhalt vonEinführung in die Durchführung einer gemeinsamen Tabellenabfrage zweier verschiedener Serverdatenbanken in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Die JIT -Kompilierung von PHP 8 verbessert die Leistung, indem häufig ausgeführte Code in den Maschinencode zusammengestellt wird, um Anwendungen mit schweren Berechnungen zugute und die Ausführungszeiten zu reduzieren.

In dem Artikel wird das Sicherung von PHP -Dateien -Uploads erläutert, um Schwachstellen wie die Code -Injektion zu verhindern. Es konzentriert sich auf die Dateitypvalidierung, den sicheren Speicher und die Fehlerbehandlung, um die Anwendungssicherheit zu verbessern.

In dem Artikel werden OWASP Top 10 Schwachstellen in PHP- und Minderungsstrategien erörtert. Zu den wichtigsten Problemen gehören die Injektion, die kaputte Authentifizierung und XSS mit empfohlenen Tools zur Überwachung und Sicherung von PHP -Anwendungen.

In dem Artikel wird die Implementierung einer robusten Authentifizierung und Autorisierung in PHP erörtert, um den nicht autorisierten Zugriff zu verhindern, Best Practices zu beschreiben und sicherheitsrelevante Tools zu empfehlen.

Vorbereitete Aussagen in PHP erhöhen die Sicherheit und Effizienz der Datenbank durch Verhinderung der SQL -Injektion und Verbesserung der Abfrageleistung durch Zusammenstellung und Wiederverwendung.

In dem Artikel werden Strategien zur Implementierung der API-Rate in PHP erörtert, einschließlich Algorithmen wie Token-Bucket und Leaky Bucket sowie Bibliotheken wie Symfony/Rate-Limiter. Es deckt auch die Überwachung, die dynamischen Einstellungsgeschwindigkeiten und die Hand ab

In dem Artikel wird die symmetrische und asymmetrische Verschlüsselung in PHP erörtert und ihre Eignung, Leistung und Sicherheitsunterschiede verglichen. Die symmetrische Verschlüsselung ist schneller und für Massendaten geeignet, während asymmetrisch für den sicheren Schlüsselaustausch verwendet wird.

In Artikel wird das Abrufen von Daten aus Datenbanken mithilfe von PHP, die Schritte, Sicherheitsmaßnahmen, Optimierungstechniken und gemeinsame Fehler bei Lösungen erfasst.
