zoukankan      html  css  js  c++  java
  • 吴裕雄 25-MySQL 临时表

    MySQL 临时表
    MySQL 临时表在我们需要保存一些临时数据时是非常有用的。
    临时表只在当前连接可见,当关闭连接时,Mysql会自动删除表并释放所有空间。
    临时表在MySQL 3.23版本中添加,如果你的MySQL版本低于 3.23版本就
    无法使用MySQL的临时表。不过现在一般很少有再使用这么低版本的MySQL数据库服务了。
    MySQL临时表只在当前连接可见,如果你使用PHP脚本来创建MySQL临时表,
    那每当PHP脚本执行完成后,该临时表也会自动销毁。
    如果你使用了其他MySQL客户端程序连接MySQL数据库服务器来创建临时表,
    那么只有在关闭客户端程序时才会销毁临时表,当然你也可以手动销毁。

    实例
    以下展示了使用MySQL 临时表的简单实例,
    以下的SQL代码可以适用于PHP脚本的mysql_query()函数。
    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
    );
    INSERT INTO SalesSummary(product_name, total_sales, avg_unit_price, total_units_sold)VALUES('cucumber', 100.25, 90, 2);
    SELECT * FROM SalesSummary;
    +--------------+-------------+----------------+------------------+
    | product_name | total_sales | avg_unit_price | total_units_sold |
    +--------------+-------------+----------------+------------------+
    | cucumber | 100.25 | 90.00 | 2 |
    +--------------+-------------+----------------+------------------+
    当你使用 SHOW TABLES命令显示数据表列表时,你将无法看到 SalesSummary表。
    如果你退出当前MySQL会话,再使用 SELECT命令来读取原先创建的临时表数据,
    那你会发现数据库中没有该表的存在,因为在你退出时该临时表已经被销毁了。

    删除MySQL 临时表
    默认情况下,当你断开与数据库的连接后,临时表就会自动被销毁。
    当然你也可以在当前MySQL会话使用 DROP TABLE 命令来手动删除临时表。
    以下是手动删除临时表的实例:
    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
    );
    INSERT INTO SalesSummary(product_name, total_sales, avg_unit_price, total_units_sold)
    VALUES('cucumber', 100.25, 90, 2);

    SELECT * FROM SalesSummary;
    +--------------+-------------+----------------+------------------+
    | product_name | total_sales | avg_unit_price | total_units_sold |
    +--------------+-------------+----------------+------------------+
    | cucumber | 100.25 | 90.00 | 2 |
    +--------------+-------------+----------------+------------------+
    DROP TABLE SalesSummary;

  • 相关阅读:
    一次关于聚合根的激烈讨论
    基于 abp vNext 和 .NET Core 开发博客项目
    PYTHON 学习笔记1 PYTHON 入门 搭建环境与基本类型
    DOCKER 学习笔记9 Kubernetes (K8s) 弹性伸缩容器 下
    DOCKER 学习笔记8 Docker Swarm 集群搭建
    DOCKER 学习笔记7 Docker Machine 建立虚拟机实战,以及错误总结
    DOCKER 学习笔记6 WINDOWS版尝鲜
    DOCKER 学习笔记5 Springboot+nginx+mysql 容器编排
    DOCKER 学习笔记4 认识DockerCompose 多容器编排
    DOCKER 学习笔记3 使用Docker部署SpringBoot
  • 原文地址:https://www.cnblogs.com/tszr/p/10089551.html
Copyright © 2011-2022 走看看