Directorio de artículos
MySQL¿Cómo crear/soltar una tabla temporal?MySQLEl papel de las tablas temporales
tabla temporal mysql
Las tablas temporales de MySQL son muy útiles cuando necesitamos almacenar algunos datos temporales.Las tablas temporales solo son visibles en la conexión actual. Cuando se cierra la conexión, Mysql eliminará automáticamente la tabla y liberará todo el espacio.
Las tablas temporales se agregaron en MySQL versión 3.23. Si su versión de MySQL es anterior a la versión 3.23, no puede usar tablas temporales de MySQL.Sin embargo, es raro usar una versión tan baja ahora.base de datos mysqlServicio.
La tabla temporal de MySQL solo es visible para la conexión actual. Si usa un script PHP para crear una tabla temporal de MySQL, la tabla temporal se destruirá automáticamente cada vez que se ejecute el script PHP.
Si usa otro programa cliente MySQL para conectarse al servidor de base de datos MySQL para crear una tabla temporal, la tabla temporal solo se destruirá cuando se cierre el programa cliente. Por supuesto, también puede destruirla manualmente.
Ejemplo
A continuación se muestra un ejemplo simple del uso de la tabla temporal MySQL, el siguiente código SQL se puede aplicar a la función mysql_query() del 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 ); 查询OK ,0 行受影响(0.00 秒 ) 的MySQL > INSERT INTO SalesSummary - > (PRODUCT_NAME ,TOTAL_SALES ,avg_unit_price ,total_units_sold )- > VALUES - > ('黄瓜' ,100.25 ,90 ,2 ); mysql > SELECT * FROM SalesSummary ; + -------------- + ------------- + ---------------- + --- --------------- + | product_name | total_sales | avg_unit_price | total_units_sold | + -------------- + ------------- + ---------------- + --- --------------- + | 黄瓜 | 100.25 | 90.00 | 2 | + -------------- + ------------- + ---------------- + --- --------------- + 1 行中集合(0.00 秒)
Cuando usasMOSTRAR MESASCuando el comando muestra la lista de tablas de datos, no podrá ver la tabla SalesSummary.
Si cierra la sesión de MySQL actual, useSELECTcomando para leer los datos de la tabla temporal creados originalmente, encontrará que la tabla no existe en la base de datos, porque la tabla temporal se destruyó cuando salió.
Soltar la tabla temporal de MySQL
De forma predeterminada, las tablas temporales se destruyen automáticamente cuando se desconecta de la base de datos.Por supuesto, también puede usar en la sesión actual de MySQLTABLA DE GOTAComando para soltar manualmente la tabla temporal.
El siguiente es un ejemplo de eliminación manual de una tabla temporal:
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 ; 错误1146 :表'chenweiliang.SalesSummary' 不存在
Esperanza Chen Weiliang Blog ( https://www.chenweiliang.com/ ) compartió "¿Cómo crea/elimina MySQL una tabla temporal? El papel de las tablas temporales de MySQL", para ayudarlo.
Bienvenido a compartir el enlace de este artículo:https://www.chenweiliang.com/cwl-497.html
