Debugexperience about SQLite & LitePal:创建数据库闪退?注意小括号

本文记录了一次在创建SQLite数据库时遇到的应用闪退问题及解决过程。作者通过查看LogCat发现SQL语句缺少右括号导致语法错误,并分享了如何避免这类错误的方法。此外,还提到了使用LitePal框架时应注意的细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考资料:《第一行代码》

源码(码云):



今天在做一个SQLite的Demo,在Create一个数据库的时候居然闪退:

          UI:


9125154-bd3d7c086f93d25b.png


还以为是权限问题结果看一下logcat,额。。。

9125154-aa97ba8a6fc8e1fa.png


发现了这一句,

9125154-93adb6204048e7ac.png


其实就是SQL语句少了一个右括号(第18行):

9125154-cdce1a42210357a5.png

嗯,编写程序的时候,要细心一点。

*****另外,

在添加表/更改onUpgrade()之后,记得在调用的代码那里(下图第16行),更改第四个参数(version):


9125154-fc7d901cbb99be40.png

不然创建数据库的时候:

9125154-81ab393fde90c962.png


一个关于LitePal的Error:

注意mapping标签下要写入正确的完整的类名:

下面是错误的示范:


9125154-f4f38c9cc4227944.png

对应会出现的bug:

9125154-14bfab8e71a785ac.png

正确写法:


9125154-ef82428f187e159c.png
另外注意:

1.litepal.xml文件要放在assets目录下;

2.文件须命名为“litepal.xml”,如下图。如果命名为“litepal(没有".xml")”,则会同上一般报错:

参考文档:Android Studio 使用litepal 无法创建数据库


9125154-7948d623349381a0.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凌川江雪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值