解决windows平台下的attempt to write a readonly database问题

问题描述

        从现场拿回来一个sqlite数据库文件,需要修改其中一张表里的一个字段的值。使用navicat打开后直接修改,提示attempt to write a readonly database。大意是试图修改一个'只读'的数据库。

 解决历程

        这个数据库的本质是一个文件,提示说它只读,应该是指这个文件的读写权限了。第一时间想到的是去查看这个文件安全属性。

        于是进到这个文件的安全属性一通修改:修改文件所有者,修改所有者的权限,不知道具体是啥,就都给了完全控制。修改完以后再尝试,还是老样子。

        网上还有人说可能是因为数据库工具不具有管理员权限,于是又用管理员权限启动navicat——既然这个方案出现在解决历程里,自然也是无果了,╮(╯▽╰)╭

亲测可用

        头一天折腾了一会儿后就放弃修改了,因为现场要解决的问题想到了另一个曲线救国的办法。结果第二天又遇到新的问题,解决方向还是指向了修改sqlite文件。

        最终,还是用了最开始上网查就查到的解决方案(但是懒,不想这么做):linux系统下,chmod。而我是windows系统,只能用mobaXterm将sqlite文件上传到linux服务器,然后chmod 777,最后再给下载回来。

        这一通折腾,终于可以修改了,看来还是linux大法好啊,╮(╯▽╰)╭

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值