Temporäre MySQL-Tabellen sind sehr nützlich, wenn wir einige temporäre Daten speichern müssen. Temporäre Tabellen sind nur in der aktuellen Verbindung sichtbar. Wenn die Verbindung geschlossen wird, löscht MySQL die Tabelle automatisch und gibt den gesamten Speicherplatz frei.
Temporäre Tabellen wurden in MySQL-Version 3.23 hinzugefügt. Wenn Ihre MySQL-Version niedriger als 3.23 ist, können Sie die temporären Tabellen von MySQL nicht verwenden. Heutzutage ist es jedoch im Allgemeinen selten, eine so niedrige Version des MySQL-Datenbankdienstes zu verwenden.
Die temporäre MySQL-Tabelle ist nur in der aktuellen Verbindung sichtbar. Wenn Sie ein PHP-Skript zum Erstellen einer MySQL-Temporärtabelle verwenden, wird die temporäre Tabelle automatisch zerstört, wenn das PHP-Skript ausgeführt wird.
Wenn Sie ein anderes MySQL-Client-Programm verwenden, um eine Verbindung zum MySQL-Datenbankserver herzustellen und eine temporäre Tabelle zu erstellen, wird die temporäre Tabelle nur zerstört, wenn das Client-Programm geschlossen wird. Sie können sie natürlich auch manuell zerstören.
Beispiel
Das Folgende zeigt ein einfaches Beispiel für die Verwendung einer temporären MySQL-Tabelle. Der folgende SQL-Code kann auf die Funktion mysql_query() des PHP-Skripts angewendet werden.
mysql> CREATE TEMPORARY TABLE SalesSummary ( -> product_name VARCHAR(50) NOT NULL -> , total_sales DECIMAL(12,2) NOT NULL DEFAULT 0.00 -> , avg_unit_price DECIMAL(7,2) NOT NULL DEFAULT 0.00 -> , total_units_sold INT UNSIGNED NOT NULL DEFAULT 0 ); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO SalesSummary -> (product_name, total_sales, avg_unit_price, total_units_sold) -> VALUES -> ('cucumber', 100.25, 90, 2); mysql> SELECT * FROM SalesSummary; +--------------+-------------+----------------+------------------+ | product_name | total_sales | avg_unit_price | total_units_sold | +--------------+-------------+----------------+------------------+ | cucumber | 100.25 | 90.00 | 2 | +--------------+-------------+----------------+------------------+ 1 row in set (0.00 sec)
Wenn Sie den Befehl SHOW TABLES verwenden, um die Datentabellenliste anzuzeigen, können Sie die SalesSummary-Tabelle nicht sehen.
Wenn Sie die aktuelle MySQL-Sitzung beenden und dann den Befehl SELECT verwenden, um die ursprünglich erstellten temporären Tabellendaten zu lesen, werden Sie feststellen, dass die Tabelle nicht in der Datenbank vorhanden ist, da die temporäre Tabelle beim Beenden zerstört wurde . .
Temporäre MySQL-Tabelle löschen
Standardmäßig wird die temporäre Tabelle automatisch zerstört, wenn Sie die Verbindung zur Datenbank trennen. Natürlich können Sie in der aktuellen MySQL-Sitzung auch den Befehl DROP TABLE verwenden, um die temporäre Tabelle manuell zu löschen.
Das Folgende ist ein Beispiel für das manuelle Löschen einer temporären Tabelle:
mysql> CREATE TEMPORARY TABLE SalesSummary ( -> product_name VARCHAR(50) NOT NULL -> , total_sales DECIMAL(12,2) NOT NULL DEFAULT 0.00 -> , avg_unit_price DECIMAL(7,2) NOT NULL DEFAULT 0.00 -> , total_units_sold INT UNSIGNED NOT NULL DEFAULT 0 ); Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO SalesSummary -> (product_name, total_sales, avg_unit_price, total_units_sold) -> VALUES -> ('cucumber', 100.25, 90, 2); mysql> SELECT * FROM SalesSummary; +--------------+-------------+----------------+------------------+ | product_name | total_sales | avg_unit_price | total_units_sold | +--------------+-------------+----------------+------------------+ | cucumber | 100.25 | 90.00 | 2 | +--------------+-------------+----------------+------------------+ 1 row in set (0.00 sec) mysql> DROP TABLE SalesSummary; mysql> SELECT * FROM SalesSummary; ERROR 1146: Table 'TUTORIALS.SalesSummary' doesn't exist
[Verwandte Empfehlungen]
1. Besondere Empfehlung : Download der Version „php Programmer Toolbox“ V0.1 2.
Kostenloses MySQL-Online-Video-TutorialDinge zum DatenbankdesignDas obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Funktionen und Beispielcodes temporärer MySQL-Tabellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!