Каталог статей
Як створити/видалити тимчасову таблицю в MySQL ? Яке призначення тимчасових таблиць MySQL ?
Тимчасова таблиця MySQL
Тимчасова таблиця MySQL дуже корисна, коли нам потрібно зберегти деякі тимчасові дані.Тимчасові таблиці видимі лише в поточному підключенні. Коли підключення закрито, Mysql автоматично видалить таблицю та звільнить увесь простір.
Тимчасові таблиці були додані у версії MySQL 3.23. Якщо ваша версія MySQL нижча за 3.23, ви не можете використовувати тимчасові таблиці MySQL. Однак такі низькі версії служб баз даних MySQL рідко використовуються в наші дні.
Тимчасова таблиця MySQL видима лише для поточного підключення. Якщо ви використовуєте сценарій PHP для створення тимчасової таблиці MySQL, тимчасова таблиця буде автоматично знищена щоразу, коли буде виконано скрипт PHP.
Якщо ви використовуєте іншу клієнтську програму MySQL для підключення до сервера бази даних MySQL для створення тимчасової таблиці, тимчасова таблиця буде знищена лише тоді, коли клієнтська програма буде закрита.Звичайно, ви також можете знищити її вручну.
Екземпляр
Нижче показано простий приклад використання тимчасової таблиці MySQL, наступний код SQL можна застосувати до функції mysql_query() сценарію 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 秒)
Під час використання команди SHOW TABLES для відображення списку таблиць таблиця SalesSummary не відображатиметься.
Якщо ви вийдете з поточного сеансу MySQL, а потім використаєте команду SELECT для зчитування даних з попередньо створеної тимчасової таблиці, ви виявите, що таблиці не існує в базі даних, оскільки тимчасова таблиця була знищена під час виходу.
Видалити тимчасову таблицю MySQL
За замовчуванням тимчасові таблиці автоматично знищуються під час відключення від бази даних. Крім того, ви можете вручну видалити тимчасові таблиці в поточному сеансі MySQL за допомогою команди DROP TABLE .
Нижче наведено приклад видалення тимчасової таблиці вручну:
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' 不存在
Сподіваємося, що стаття «Як створити/видалити тимчасову таблицю в MySQL? Роль тимчасових таблиць у MySQL», опублікована в блозі Ченя Вейляна ( https://www.chenweiliang.com/ ), буде вам корисною.
Не соромтеся поділитися посиланням на цю статтю: https://www.chenweiliang.com/cwl-497.html
