The database disk image is malformed_数据库sqlite

The database disk image is malformed_数据库sqlite一.问题分析此问题的提示也就是数据库文件损坏。如果在程序访问数据库期间拷贝是很容易出现该问题的,断开所有连接去拷贝在实际项目中有时候是不现实的,所以我们有时去做一下手动修复。二.问题修复1.下载sqlite3.exe到本地,并将损坏的数据库文件拷贝到同一个目录2.打开命令行工具(CMD),进入到sqlite3.exe所在目录3.使用sqlite3.exe打开损坏的数据库文件,并导出sql语句到临时文件E:\sqlite>sqlite3.exe2022_03_03

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一.问题分析

此问题的提示也就是数据库文件损坏。如果在程序访问数据库期间拷贝是很容易出现该问题的,断开所有连接去拷贝在实际项目中有时候是不现实的,所以我们有时去做一下手动修复。

二.问题修复

1.下载sqlite3.exe到本地,并将损坏的数据库文件拷贝到同一个目录

The database disk image is malformed_数据库sqlite

2.打开命令行工具(CMD),进入到sqlite3.exe所在目录

The database disk image is malformed_数据库sqlite

3.使用sqlite3.exe打开损坏的数据库文件,并导出sql语句到临时文件

E:\sqlite>sqlite3.exe 2022_03_03.log
SQLite version 3.26.0 2018-12-01 12:34:55
Enter “.help” for usage hints.
sqlite> .output temp.sql
sqlite> .dump
sqlite> .exit

4.修改临时文件 temp.sql

    将文件最后一行的 Rollback 改为Commit

5.新建数据库文件 newDB

E:\sqlite>sqlite3.exe
SQLite version 3.26.0 2018-12-01 12:34:55
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> .open newDb

6. 读取数据到新数据库

 sqlite> .read temp.sql
sqlite> .exit

至此数据库文件就修复完成,我们就可以使用newDB来查询我们所需的数据 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197449.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 安卓udp发包工具_网络发包工具_xcap网络发包工具免费版V1.0.2下载(暂未上线)_预约_飞翔下载…[通俗易懂]

    安卓udp发包工具_网络发包工具_xcap网络发包工具免费版V1.0.2下载(暂未上线)_预约_飞翔下载…[通俗易懂]xcap是一个免费的网络发包工具,可以构造和发送常用的网络报文,如arp,ip,icmp,udp等。这个是最新的中文版,支持构造报文和发送报文。主要功能:构造报文支持构造常见的以太网报文,包括arp、rarp、ipv4、ipv6、icmpv4、icmpv6、igmp、udp、tcp、pim、ospf、rip、snmp、ppp、pppoe、ipsec(ah/esp)等等,以及一些不常用的报文,如果8…

    2022年9月5日
    3
  • mysql 修改字段类型

    mysql 修改字段类型mysql修改字段长度altertablenews modifycolumntitlevarchar(130);altertable表名modifycolumn字段名类型;如:news表里的title 字段原来长度是100个字符,现长度要改成130个字符mysql修改字段类型altertablenews mo

    2022年4月29日
    36
  • java 递归函数

    java 递归函数一、递归函数,通俗的说就是函数本身自己调用自己…如:n!=n(n-1)!你定义函数f(n)=nf(n-1)而f(n-1)又是这个定义的函数。。这就是递归二、为什么要用递归:递归的目的是简化程序设计

    2022年7月2日
    20
  • js有序数组合并_js array map

    js有序数组合并_js array mapjavascript实现有序map

    2022年9月23日
    0
  • app弱网测试的方法(测试自己声音类型app)

    一,弱网场景简介当前APP网络环境比较复杂,网络制式有2G、3G、4G网络,还有越来越多的公共Wi-Fi。不同的网络环境和网络制式的差异,都会对用户使用app造成一定影响。另外,骑士使用我们产品的场景多变,如进入地下美食城、进电梯,进各种写字楼,居民楼等,使得弱网测试显得尤为重要。如果app没有对各种网络异常进行兼容处理,那么骑士在进行正常的业务履单操作时可能遇到APP闪退、ANR、数据丢失等问题。二,弱网测试介绍什么样的网络属于弱网?低于2G速率的时候都属于弱网,3G也可划分为弱网,一般Wi-

    2022年4月17日
    89
  • charles乱码怎么解决_微信抓包乱码

    charles乱码怎么解决_微信抓包乱码前言当使用Charles抓包时,发现数据都是乱码,这时需要安装证书解决办法1.点击charles窗口,点击左上角Help->SSLProxying→InstallCharles

    2022年8月6日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号