Der MySQL-Server unterstützt vorbereitete Anweisungen, was sehr nützlich ist, wenn wir viele Abfragen ausführen möchten, die sich nur in kleinen Details unterscheiden. Wir können eine Anweisung vorbereiten und sie dann mehrmals ausführen, jedes Mal mit unterschiedlichen Datenwerten. Grundsätzlich nutzen vorbereitete Anweisungen in MySQL das Client/Server-Binärprotokoll. Vorbereitete Anweisungen bieten eine verbesserte Leistung, da der Server nur eine vollständige Anweisung analysiert.
Hier sind die Schritte zur Verwendung vorbereiteter Anweisungen in MySQL –
Dies ist der erste Schritt in unserer vorbereiteten Anweisung mit der PREPARE-Anweisung. Unten sehen Sie beispielsweise einen Bericht, der mit Daten aus der Tabelle „Tender“ erstellt wurde –
PREPARE stmt FROM ‘Select tender_value from Tender Where Companyname = ?;’
Dies ist der zweite Schritt, den wir mit der vorbereiteten Anweisung „PREPARE“-Anweisung ausführen werden. Zum Beispiel führen wir eine vorbereitete Anweisung mit der folgenden Syntax stmt aus:
EXECUTE stmt USING @variable_name;
Hier hat @Variablenname den Wert, den wir übergeben möchten? in einer PREPARE-Anweisung. Bevor wir die vorbereitete Anweisung ausführen, müssen wir den Wert von @variable_name mithilfe der SET-Anweisung festlegen.
Dies ist der letzte Schritt, in dem wir die vorbereitete Anweisung mithilfe der DEALLOCATE-Anweisung freigeben. Beispielsweise werden wir die vorbereitete Anweisung stmt mit Hilfe der folgenden Syntax freigeben –
DEALLOCATE PREPARE stmt;
Unten finden Sie die Abfrage, bei der wir die vorbereitete Anweisung ausführen werden –
mysql> PREPARE stmt FROM 'SELECT tender_value from Tender WHERE Companyname = ?'; Query OK, 0 rows affected (0.09 sec) Statement prepared mysql> SET @A = 'Singla Group.'; Query OK, 0 rows affected (0.00 sec) mysql> EXECUTE stmt using @A; +--------------+ | tender_value | +--------------+ | 220.255997 | +--------------+ 1 row in set (0.07 sec) mysql> DEALLOCATE PREPARE stmt; Query OK, 0 rows affected (0.00 sec)
Das obige ist der detaillierte Inhalt vonWie verwenden wir vorbereitete Anweisungen in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!