SQLite数据库写在读

时间:2016-04-15 13:56:47

标签: sqlite inotify

我一直在使用inotify和sqlite数据库,因为我想知道数据库文件的编写频率。

问题是每次发送查询时都会写入数据库文件。无论是读取(SELECT)还是修改(UPDATE)都无关紧要。之后始终激活inotify标志IN_CLOSE_WRITE。

我想避免尽可能多的写作。我在这里错过了什么吗?不应该只在执行修改操作时写入数据库吗?

1 个答案:

答案 0 :(得分:3)

IN_CLOSE_WRITE标志不表示写入了某些内容,只表示该文件是开放的,用于写入。

数据库不知道您是否会稍后写一些内容,因此它会打开具有写访问权限的文件,以避免重新打开它。

如果您知道自己永远不想写,请使用SQLITE_OPEN_READONLY标志。