【sqlite】error14,unable to open datebase file

打开 sqlite db 文件,open操作成功,查询返回 14 号错误:

"unable to open database file"

有几个困惑的地方:

* db都是从iphone上取下来的,其他几个db都可以正常打开,查询,唯独这个不行。
* 将这个db放在Windows下,用SQLiteExpert可以打开,说明数据库本身没有问题。(当前是在Mac下)
* 将程序提升到root权限执行,database文件可以打开。这又根第一点有点矛盾,为啥只有这个需要权限呢?

带着疑问找到几个相关知识点:

* sqlite打开db的时候,一般会在db文件相同目录生成一个临时文件
* mac下的系统目录创建文件是需要root权限的
* 而我们这个db又刚好是放在系统目录下

尝试了一种解决方案,验证ok

* 如果db能正常打开,忽略
* 如果碰到error 14,那就将dbcopy到非系统目录再次尝试打开。

问题解决,但却没有彻底释疑,为啥就部分db出现这种情况呢?

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值