Wie wir alle wissen, sind MySQL-Benutzervariablen spezifisch für die Clientverbindung, die sie verwendet, und existieren nur für die Dauer dieser Verbindung. Wenn eine Verbindung beendet wird, gehen alle ihre Benutzervariablen verloren. Ebenso existiert eine vorbereitete Anweisung nur während der Sitzung, in der sie erstellt wurde, und ist für diese sichtbar. Wenn eine Sitzung endet, werden alle vorbereiteten Anweisungen für diese Sitzung verworfen.
Eine weitere Ähnlichkeit besteht darin, dass bei vorbereiteten Anweisungen die Groß-/Kleinschreibung ebenso nicht beachtet wird wie bei MySQL-Benutzervariablen. Zum Beispiel sind stmt11 und STMT11 gleich, wie im folgenden Beispiel gezeigt:
mysql> Select * from student; +------+-------+ | Id | Name | +------+-------+ | 1 | Ram | | 2 | Shyam | | 3 | Rohan | +------+-------+ 3 rows in set (0.00 sec) mysql> SET @A = 'Sohan', @B = 3; Query OK, 0 rows affected (0.00 sec) mysql> EXECUTE Stmt11 USING @A, @B; Query OK, 1 row affected (0.12 sec) mysql> Select * from Student; +------+-------+ | Id | Name | +------+-------+ | 1 | Ram | | 2 | Shyam | | 3 | Sohan | +------+-------+ 3 rows in set (0.00 sec) mysql> SET @A = 'Gaurav', @B = 3; Query OK, 0 rows affected (0.00 sec) mysql> EXECUTE STMT11 USING @A, @B; Query OK, 1 row affected (0.04 sec) mysql> Select * from Student; +------+--------+ | Id | Name | +------+--------+ | 1 | Ram | | 2 | Shyam | | 3 | Gaurav | +------+--------+ 3 rows in set (0.00 sec)
Im obigen Beispiel funktionieren beide, sobald wir stmt11 ausführen, bei der nächsten Ausführung von STMT11 gleich, da vorbereitete Anweisungen nicht zwischen Upper und Lower unterscheiden Fall.
Das obige ist der detaillierte Inhalt vonWelche Ähnlichkeiten bestehen zwischen vorbereiteten Anweisungen und MySQL-Benutzervariablen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!