• 面试频率可不低哦,大家务必掌握,避免阴沟翻船!还不会MySQL临时表应用?可能错过大厂offer_MySQL

临时表在我们需要保存一些临时数据时非常有用。
临时表只在当前连接可见,当关闭连接时,MySQL会自动删除表并释放所有空间。

临时表在MySQL 3.23版本添加。

如果你使用Java的MySQL客户端程序连接MySQL数据库服务器来创建临时表,那么只有在关闭客户端程序时才会销毁临时表,当然也可手动销毁。

实例
  • 建表
    还不会MySQL临时表应用?可能错过大厂offer_MySQL_02

  • 插入数据
    还不会MySQL临时表应用?可能错过大厂offer_MySQL_03

  • 查询还不会MySQL临时表应用?可能错过大厂offer_MySQL_04

当使用 SHOW TABLES显示数据表列表时,无法看到所建的表。

若退出当前MySQL会话,再使用 SELECT命令来读取原先创建的临时表数据,那你会发现数据库中没有该表的存在,因为在你退出时该临时表已经被销毁了。

删除MySQL 临时表

默认情况下,当断开与数据库的连接后,临时表就会自动被销毁。当然也可以在当前MySQL会话使用 DROP TABLE 命令来手动删除临时表。

以下是手动删除临时表的实例:
还不会MySQL临时表应用?可能错过大厂offer_MySQL_05

场景案例

比如你的系统有高并发同时写库的需求。假设10w条数据量同时写入:

  1. 多线程,建临时表,分别写到临时表,再入库
  2. 从源端控制,不允许同时写入多条