如何修复我的sqlite?数据库磁盘映像格式错误

问题描述 投票:0回答:1

当我执行“vacuum;”时,刚刚在下面发现了消息。

“数据库磁盘映像格式错误。”

所以,我确实喜欢那些。

C>sqlite [malformed.db]
sqlite3>.mode insert
sqlite3>.output a.sql
sqlite3>.dump

并继续...

C>sqlite3 new.db
sqlite3>.read a.sql

终于找到了文件大小为0字节的new.db。

有什么想法吗?

sqlite
1个回答
0
投票

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

让我想起一些与精灵有关的轶事,不是吗?

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

因此,删除此行,将其替换为“end transaction;”,重新运行,希望一切顺利。

© www.soinside.com 2019 - 2024. All rights reserved.