Latest web development tutorials

MySQL tables temporaires

MySQL tables temporaires nous avons besoin pour sauvegarder certaines données temporaire est très utile. La table temporaire est visible dans la connexion en cours, lorsque la connexion est fermée, Mysql supprimera automatiquement la table et libérer tout l'espace.

Les tables temporaires dans MySQL version 3.23 est ajouté, si votre version de MySQL antérieure à la version 3.23 ne peut pas utiliser des tables temporaires MySQL. Mais maintenant il y a une autre utilisent rarement une telle version basse du serveur de base de données MySQL.

MySQL tables temporaires seulement visibles dans la connexion en cours, si vous utilisez le script PHP MySQL pour créer une table temporaire, puis quand a fait l'exécution du script PHP est terminée, la table temporaire est automatiquement détruit.

Si vous utilisez un autre programme client MySQL pour se connecter au serveur de base de données MySQL pour créer une table temporaire, puis seulement quand vous fermez le programme client va détruire la table temporaire, bien sûr, vous pouvez également détruit manuellement.

Exemples

Ce qui suit montre un exemple simple de l'utilisation de MySQL table temporaire, le code SQL suivante peut être appliquée au script PHP mysql_query de fonction ().

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)

Lorsque vous utilisez SHOW TABLES commande pour afficher une liste de la table de données, vous ne pourrez pas voir le tableau SalesSummary.

Si vous quittez la session en cours MySQL, puis utilisez la commande SELECT pour lire les données initialement créé table temporaire, alors vous trouverez que la base de données n'existe pas dans la table, parce que quand vous quittez la table temporaire a été détruite.


Supprimer MySQL tables temporaires

Par défaut, lorsque vous vous déconnectez la connexion à la base de données, la table temporaire sera automatiquement détruit. Bien sûr, vous pouvez également supprimer manuellement la table temporaire en utilisant la commande DROP TABLE dans la session de MySQL actuelle.

Ce qui suit est de supprimer manuellement la table Exemple temporaire:

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 'w3big.SalesSummary' doesn't exist