如何修复我的sqlite?数据库磁盘映像的格式不正确

如何修复我的sqlite?数据库磁盘映像的格式不正确,sqlite,Sqlite,当我做“真空”时,刚在下面找到消息 “数据库磁盘映像的格式不正确。” 所以,我确实喜欢这些 C>sqlite[格式不正确的.db] sqlite3>.modeinsert sqlite3>。输出a.sql sqlite3>.dump 并继续 C>sqlite3 new.db sqlite3>。阅读a.sql 最后我找到了新的.db,它的文件大小是0字节 有什么想法吗?出于某种原因,您描述的这个过程,当数据库格式错误时,会在sql文件中添加最后一行,上面写着“回滚”(-由于错误,详细说明) 让人想

当我做“真空”时,刚在下面找到消息

“数据库磁盘映像的格式不正确。”

所以,我确实喜欢这些

C>sqlite[格式不正确的.db]
sqlite3>.modeinsert
sqlite3>。输出a.sql
sqlite3>.dump

并继续

C>sqlite3 new.db
sqlite3>。阅读a.sql

最后我找到了新的.db,它的文件大小是0字节


有什么想法吗?

出于某种原因,您描述的这个过程,当数据库格式错误时,会在sql文件中添加最后一行,上面写着“回滚”(-由于错误,详细说明)

让人想起了一些关于精灵的轶事,不是吗

虽然它旨在防止在现有基础上导入数据时发生灾难,但如果您只想从头开始重建数据库,那将是一场灾难


所以,删除这一行,用“end transaction;”替换它,重新运行,希望您一切正常。

由于某种原因,您描述的这个过程,当数据库格式错误时,会在sql文件中添加最后一行,它表示“回滚”(-由于错误,详细说明)

让人想起了一些关于精灵的轶事,不是吗

虽然它旨在防止在现有基础上导入数据时发生灾难,但如果您只想从头开始重建数据库,那将是一场灾难


因此,删除这一行,用“end transaction;”替换它,重新运行,希望您一切正常。

从备份中还原它。可能与我重复,我最终放弃。从备份中还原它。可能与我重复,我最终放弃。