SQLite:更新相同数据时会写入磁盘吗?
SQLite: will it write to disk when updating same data?
客户端应用程序从服务器接收 table 并将其存储在本地 SQLite 数据库中。 table 发送频繁但很少更改,因此大多数更新插入到本地数据库中已经存在的数据。
SQLite 会在此类更新后进行磁盘写入吗?数据存储在SD卡上,经常写入SD卡是个坏主意。
我可以从数据库中读取数据与收到的数据进行比较 table 并仅更新已更改的行。也许 SQLite 很聪明,会透明地为我做这件事?
当你运行这样的陈述时:
UPDATE SomeTable SET ... WHERE ...
然后所有与 WHERE 子句匹配的行都会被重写。
如果您想避免这种情况,您必须自己比较行值。
客户端应用程序从服务器接收 table 并将其存储在本地 SQLite 数据库中。 table 发送频繁但很少更改,因此大多数更新插入到本地数据库中已经存在的数据。
SQLite 会在此类更新后进行磁盘写入吗?数据存储在SD卡上,经常写入SD卡是个坏主意。
我可以从数据库中读取数据与收到的数据进行比较 table 并仅更新已更改的行。也许 SQLite 很聪明,会透明地为我做这件事?
当你运行这样的陈述时:
UPDATE SomeTable SET ... WHERE ...
然后所有与 WHERE 子句匹配的行都会被重写。
如果您想避免这种情况,您必须自己比较行值。