以编程方式修复SQLite数据库

如果数据库文件被破坏,我需要尝试从.NET程序修复SQLite数据库。 我找到了几个站点,例如Fix SQLite ,在FAQ中它描述了你可以:

根据数据库损坏的严重程度,您可以使用CLI将架构和内容转储到文件然后重新创建,从而恢复部分数据。

有谁知道在.NET中以编程方式修复SQLite数据库的方法?

你忽略了一个重要的词:你可以“恢复一些数据”,这不是修复!

如果有一个静止的地方,在没有用户交互的情况下可以完美地修复损坏的数据库,而不是在一开始就不会被破坏,这样的repair将是SQLite的标准function

您可以考虑实施自己的数据库恢复策略。 您可以存储SQLite文件的备份,然后使用以下命令检查它是否正常:

 PRAGMA integrity_check; 

如果发现错误,则可以恢复为备份。