Ausführen mehrerer SQL-Abfragen in einer Anweisung mit PHP
In diesem Programmierrätsel sucht der Benutzer nach einer Methode, um mehrere SQL-Abfragen in einer zu kombinieren einzelne Aussage. Sie haben Beispielcode bereitgestellt, der aus drei separaten Abfragen besteht:
DELETE FROM aktywne_kody WHERE kodsms ='$kodSMSgracza' AND typkodu ='$id'; mysql_query($query) or die(mysql_error()); INSERT INTO uzyte_kody (gracz, kodsms, typkodu) VALUES ('$nickGracza', '$kodSMSgracza', '$id'); mysql_query($query) or die("Błąd MySQL X04"); INSERT INTO do_odebrania (gracz, itemDATA, itemQTY) VALUES ('$nickGracza', '$itemDATA', '$itemQTY'); mysql_query($query) or die("Błąd MySQL X05");
Lösung
Um mehrere SQL-Abfragen in einer Anweisung mit PHP und MySQL auszuführen, lautet der Schlüssel 65536 als fünften Parameter während der mysql_connect-Initialisierung zu übergeben. Hier ist ein Beispiel:
$conn = mysql_connect('localhost','username','password', true, 65536 /* here! */) or die("cannot connect"); mysql_select_db('database_name') or die("cannot use database"); mysql_query(" INSERT INTO table1 (field1,field2) VALUES(1,2); INSERT INTO table2 (field3,field4,field5) VALUES(3,4,5); DELETE FROM table3 WHERE field6 = 6; UPDATE table4 SET field7 = 7 WHERE field8 = 8; INSERT INTO table5 SELECT t6.field11, t6.field12, t7.field13 FROM table6 t6 INNER JOIN table7 t7 ON t7.field9 = t6.field10; -- etc ");
In diesem Beispiel werden alle Abfragen nacheinander als Teil einer einzigen Anweisung ausgeführt. Es ist wichtig zu beachten, dass nachfolgende Befehle wie mysql_fetch_*, mysql_num_rows und mysql_affected_rows nur für die erste ausgeführte Abfrage gültig sind.
mysql_close-Frage
Bezüglich der Frage zu Beim Schließen der Datenbankverbindung wird im Allgemeinen empfohlen, nach Abschluss aller SQL-Abfragen mysql_close($db) aufzurufen, um die Verbindung freizugeben und Ressourcen freizugeben.
Das obige ist der detaillierte Inhalt vonWie kann ich mit PHP mehrere SQL-Abfragen in einer einzigen Anweisung ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!