gpt4 book ai didi

mysql - MySQL中堆表和临时表的区别?

转载 作者:IT老高 更新时间:2023-10-29 00:21:49 25 4
gpt4 key购买 nike

我对 MySQL 很陌生。我的问题可能有问题,如果是,请更正或解释。

我刚刚通过在 Google 上搜索定义了解了堆表和临时表。它们之间的确切区别是什么以及两者的实时用途是什么?

根据我的知识或阅读过的内容:

堆表:内存中存在的表称为堆表。在 MySql 中创建 HEAP 表时,用户需要将 TYPE 指定为 HEAP。这些表现在更普遍地称为内存表。这些内存表从来没有像“BLOB”或“TEXT”这样的数据类型的值。他们使用使他们更快的索引。

临时表:临时表在某些情况下对于保存临时数据非常有用。临时表是当当前客户端 session 终止时它们将被删除。

最佳答案

正如您自己所说,临时表仅在 session 期间有效,而堆表存在于内存中。因此,如果不重启数据库,堆表可以存在很长时间。

一旦您的 session 断开连接,临时表将被删除。

临时表不在客户端之间共享,堆表是共享的。因此对于每个连接,临时表都是唯一的,对于第二个连接,另一个连接的临时表是不存在的。

对于临时表,您需要特殊权限(创建临时表),而堆表只是另一个存储引擎。

关于mysql - MySQL中堆表和临时表的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18073839/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com