SQLite 数据库写在读
SQLite Database written on read
我一直在使用 inotify 和 sqlite 数据库,因为我想知道数据库文件的写入频率。
问题是每次发送查询时都会写入数据库文件。不管是读取(SELECT)还是修改(UPDATE)。 inotify 标志 IN_CLOSE_WRITE 总是在那之后被激活。
我想尽可能避免写作。我在这里错过了什么吗?数据库不应该只在执行修改操作的时候写吗?
IN_CLOSE_WRITE 标志并不表示已写入某些内容,仅表示该文件已打开以供写入。
数据库不知道您稍后是否会写入内容,因此它以写入权限打开文件以避免重新打开它。
如果您知道自己永远不想写,请使用 SQLITE_OPEN_READONLY 标志。
我一直在使用 inotify 和 sqlite 数据库,因为我想知道数据库文件的写入频率。
问题是每次发送查询时都会写入数据库文件。不管是读取(SELECT)还是修改(UPDATE)。 inotify 标志 IN_CLOSE_WRITE 总是在那之后被激活。
我想尽可能避免写作。我在这里错过了什么吗?数据库不应该只在执行修改操作的时候写吗?
IN_CLOSE_WRITE 标志并不表示已写入某些内容,仅表示该文件已打开以供写入。
数据库不知道您稍后是否会写入内容,因此它以写入权限打开文件以避免重新打开它。
如果您知道自己永远不想写,请使用 SQLITE_OPEN_READONLY 标志。