在所有的优化指南中,人们都会谈论像JOURNAL_MODE或SYNCHRONOUS这样的pragma,但我从未读到过关于TEMP_STORE pragma的任何信息?我认为它会有很大的影响,所以为什么没有提到它呢?
它的目的是将SQLite的所有内部临时表从磁盘(temp目录)移动到内存中,这似乎比每次SELECT都访问磁盘要快得多?
它的目的是将SQLite的所有内部临时表从磁盘(temp目录)移动到内存中,这似乎比每次SELECT都访问磁盘要快得多?
SQLite在进行写操作时会锁定整个数据库,因此在继续下一个任务之前最好将数据放入盘片中。
将数据存储在内存中很可能只适用于那些需要临时数据存储的情况(正如TEMP_STORE名称所示);如果您想保存数据,则仍需要提供定期刷新数据到磁盘的方法,而且由于锁定粒度不是非常细,您必须刷新整个数据库。
换句话说,TEMP_STORE不是缓存机制。