Heim > Datenbank > MySQL-Tutorial > Wie kann ich mehrere MySQL-Abfragen in PHP ausführen?

Wie kann ich mehrere MySQL-Abfragen in PHP ausführen?

Barbara Streisand
Freigeben: 2024-12-08 19:20:12
Original
588 Leute haben es durchsucht

How Can I Execute Multiple MySQL Queries in PHP?

Kombinieren mehrerer MySQL-Abfragen in PHP

In PHP/MySQL ist es nicht möglich, mehrere Abfragen als eine einzige Codezeile auszuführen die reguläre MySQL-API. Es gibt jedoch alternative Ansätze, um das gleiche Ergebnis zu erzielen.

Verwendung der mysqli_multi_query-Funktion von MySQLi

MySQLi bietet eine Funktion namens mysqli_multi_query, mit der Sie mehrere Abfragen auf einmal ausführen können . Syntax:

mysqli_multi_query(mysqli $link, string $query);
Nach dem Login kopieren
  • $link: Eine gültige MySQLi-Verbindungsressource.
  • $query: Eine Zeichenfolge, die alle Abfragen enthält, die Sie ausführen möchten. Trennen Sie jede Abfrage durch ein Semikolon (;).

Zum Beispiel:

$mysqli = new mysqli('localhost', 'username', 'password', 'database_name');

$query = "SELECT SQL_CALC_FOUND_ROWS Id, Name FROM my_table WHERE Name LIKE '%prashant%' LIMIT 0, 10;" . "SELECT FOUND_ROWS();";

$mysqli->multi_query($query);

// Handle each result set separately
if ($mysqli->more_results()) {
    do {
        $result = $mysqli->store_result();
        // Process the current result set
        while($row = $result->fetch_array()) {
            // Do something with the row
        }
        $result->free();
    } while ($mysqli->more_results() && $mysqli->next_result());
}
Nach dem Login kopieren

Hinweis: Die Verwendung von mysql_query und anderen Funktionen der MySQL-API ist veraltet und sollte zugunsten von MySQLi oder PDO (PHP Data) vermieden werden Objekte).

Andere Ansätze

  • Zwei separate Abfragen ausführen: Obwohl dies nicht so effizient ist, können Sie einfach die beiden Abfragen einzeln ausführen nach dem anderen. Die zweite Abfrage wird sehr schnell ausgeführt, sodass der Leistungsunterschied normalerweise vernachlässigbar ist.
  • Verwenden Sie einen Database Abstraction Layer (DAL): Ein DAL ist eine Softwarebibliothek, die eine gemeinsame Schnittstelle für bereitstellt Interaktion mit verschiedenen Datenbanken. Einige DALs, wie Doctrine, ermöglichen die Ausführung mehrerer Abfragen als eine einzige Transaktion.

Das obige ist der detaillierte Inhalt vonWie kann ich mehrere MySQL-Abfragen in PHP ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage