数据库操作时的临时文件

Posted huahuahu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库操作时的临时文件相关的知识,希望对你有一定的参考价值。

在进行数据库查找、插入操作时,经常会出现一些临时文件,那么这些临时文件在内存中还是在磁盘中呢?
比如下面例子中第三步,使用临时的B树进行排序,这个临时的B树在内存还是磁盘中呢?

根据sqlite的文档,这个值是通过编译参数SQLITE_TEMP_STORE和运行时参数temp_store指定的。
编译参数SQLITE_TEMP_STORE默认是1,运行时参数temp_store默认是0,因此最终这些临时文件存储在磁盘中。

对于ios系统自带的sqlite数据库来说,编译参数是不能改变的。可以改变temp_store为2,指定临时文件存在内存中。这样可以带来性能上的优势,毕竟操作内存要比操作磁盘快。

以上是关于数据库操作时的临时文件的主要内容,如果未能解决你的问题,请参考以下文章

在视图寻呼机中使用时的片段生命周期

添加片段时的 FlyOut 菜单设计问题

使用 APNS 时将应用程序从临时阶段转移到应用程序商店分发时的配置文件更改

构建数据仓库时的临时仪表板/报告解决方案

VSCode自定义代码片段——git命令操作一个完整流程

从后台堆栈恢复片段时的 savedInstanceState