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

Wie kann ich mehrere SQL-Abfragen in einer einzigen PHP-Anweisung ausführen?

DDD
DDDOriginal
2024-12-16 09:27:12187Durchsuche

How Can I Execute Multiple SQL Queries in a Single PHP Statement?

Kombinieren mehrerer SQL-Abfragen in einer einzigen Anweisung mit PHP

In PHP kann die Ausführung mehrerer SQL-Abfragen in einer Anweisung mithilfe der Multi-Anweisung erreicht werden -query()-Funktion. Mit dieser Funktion können Sie mehrere Abfragen miteinander verketten und als eine einzige Transaktion ausführen.

Syntax:

$stmt = $conn->multi_query($query);

Beispiel:

Berücksichtigen Sie die folgenden Mehrfachabfragen:

$query = "DELETE FROM active_codes WHERE sms_code ='$smsCode' AND code_type ='$id'";
$query .= "INSERT INTO used_codes (player, sms_code, code_type) VALUES ('$playerNick', '$smsCode', '$id')";
$query .= "INSERT INTO rewards (player, item_data, item_qty) VALUES ('$playerNick', '$itemData', '$itemQty')";

Sie können diese Abfragen in einer einzigen Anweisung kombinieren als folgt:

$conn = new mysqli('localhost', 'username', 'password', 'database_name');
$stmt = $conn->multi_query($query);

Zusätzliche Überlegungen:

  • Bei der Arbeit mit Abruffunktionen oder Zeilenzählfunktionen wie mysql_fetch_* oder mysql_num_rows werden nur die Ergebnisse von Die erste Abfrage ist zugänglich.
  • Es wird empfohlen, die Datenbankverbindung mit zu schließen mysql_close($conn) nach der Ausführung aller Abfragen, um Ressourcen freizugeben.

Hinweis:

Das in der Frage bereitgestellte Beispiel verweist auf die veralteten mysql_*-Funktionen. Es wird empfohlen, stattdessen die Erweiterung mysqli oder PDO für die Datenbankkonnektivität in PHP zu verwenden.

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

Stellungnahme:
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