Maison  >  Article  >  base de données  >  Explication détaillée des fonctions et exemples de codes des tables temporaires MySQL

Explication détaillée des fonctions et exemples de codes des tables temporaires MySQL

零下一度
零下一度original
2017-05-16 10:46:232165parcourir

Les tables temporaires MySQL sont très utiles lorsque nous devons sauvegarder des données temporaires. Les tables temporaires ne sont visibles que dans la connexion actuelle. Lorsque la connexion est fermée, Mysql supprimera automatiquement la table et libérera tout l'espace.

Des tables temporaires ont été ajoutées dans la version 3.23 de MySQL. Si votre version de MySQL est inférieure à 3.23, vous ne pouvez pas utiliser les tables temporaires de MySQL. Cependant, de nos jours, il est généralement rare d’utiliser une version aussi basse du service de base de données MySQL.

La table temporaire MySQL n'est visible que dans la connexion actuelle. Si vous utilisez un script PHP pour créer une table temporaire MySQL, la table temporaire sera automatiquement détruite lors de l'exécution du script PHP.

Si vous utilisez un autre programme client MySQL pour vous connecter au serveur de base de données MySQL afin de créer une table temporaire, la table temporaire ne sera détruite qu'à la fermeture du programme client. Bien sûr, vous pouvez également la détruire manuellement.

Exemple

Ce qui suit montre un exemple simple d'utilisation d'une table temporaire MySQL. Le code SQL suivant peut être appliqué à la fonction mysql_query() du script PHP.

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 la commande SHOW TABLES pour afficher la liste des tables de données, vous ne pourrez pas voir la table SalesSummary.

Si vous quittez la session MySQL en cours et utilisez ensuite la commande SELECT pour lire les données de la table temporaire créée à l'origine, vous constaterez que la table n'existe pas dans la base de données car la table temporaire a été détruite lorsque vous quittez. .

Supprimer la table temporaire MySQL

Par défaut, la table temporaire sera automatiquement détruite lorsque vous vous déconnecterez de la base de données. Bien entendu, vous pouvez également utiliser la commande DROP TABLE dans la session MySQL en cours pour supprimer manuellement la table temporaire.

Ce qui suit est un exemple de suppression manuelle d'une table 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 'TUTORIALS.SalesSummary' doesn't exist

[Recommandations associées]

1. Recommandation spéciale.  : "php Programmer Toolbox" version V0.1 à télécharger

2. Tutoriel vidéo en ligne mysql gratuit

3. Choses sur la conception de bases de données

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn