我在Sqlite3(WSL下的Node.js)中随机SQLITE_IOERR
。
我的程序进行了大量的插入操作(一个接一个),有时候随机SQLITE_IOERR
。我可以通过从sqlite3命令行工具中执行大量SELECT count(*) FROM mytable
来复制此错误。
为了解决这个问题,我实现了一种重复机制,如果它获得SQLITE_IOERR
,它会重试查询。这种方法很有效,但有时第二次调用由于UNIQUE_CONSTRAINT
错误而失败。
我确信在我插入的内容中没有重复的数据,所以唯一的解释是,它发生的原因是,尽管SQLITE_IOERR
,写入实际上已成功。
所以我想知道,有没有办法检测和预防这种情况?基本上我该怎么做才能确保任何SQLITE_IOERR
实际意味着存在错误并且没有插入数据?