收银机上的sqlite数据库经常出现这种错误,错误的原因有可能是突然断电或是一些不规范操作导致的。
网上一般的做法有两种:
方法一:
1、在https://www.sqlite.org/download.html网站上下载sqlite-tools工具,我下载的是
http://sqlite-tools-win32-x86-3250300.zip
2、解压上面的压缩包,并在命令行模式下进入该目录运行sqlite3.exe
3、打开损坏的数据库文件
.open d:/CloudPos.db
4、进行检测
PRAGMA integrity_check;
5、设置导出文件为tmp.sql
.output d:/tmp.sql
6、将CloudPos.db中的内容以sql方式导出到tmp.sql
.dump
7、创建temp.db数据库
.open d:/temp.db
8、从tmp.sql中导入数据
.read d:/tmp.sql
9、退出
.quit
方法二:
使用SQLite Expert Professional工具提供的repair来修复db文件