我需要将单行写入放置在文件服务器上的文件。我正在考虑使用SQLite来确保该行的写入成功而不仅仅是部分完成。但是,因为插入性能非常重要。我的问题是,SQLite在向表中插入行时会经历的确切过程(读取此内容,写入,读取此内容等)是什么。该表没有任何索引,也没有主键,约束或任何东西。
答案 0 :(得分:14)
答案 1 :(得分:10)
您应该使用交易,从而尽量避免fsync()
每个INSERT
。看看here的一些基准测试。
另外,请务必正确设置两个重要的pragmas
:
NORMAL
)WAL
)答案 2 :(得分:0)
您可以使用explain解释执行语句时会发生什么的详细信息:http://www.sqlite.org/lang_explain.html