鸿蒙数据库开发CursorWindowAllocationException

1. ResultSet resultSet = databaseHelper.query(Uri.parse(BASE_URI + DATA_PATH), columns, predicates); 数据开发时提供的案例如下,结果集resultSet使用是否需要调用resultSet.close()进行关闭?

2. app长时间运行后,会发生CursorWindowAllocationException异常, 日志显示无法创建cursorwindow和xxx.db文件, 是否有比较好的方式定位问题, 和cursor未关闭有关系么?

鸿蒙
数据库
开发
2021-12-13 10:25:13
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Claphame

1.resultSet是一个查询结果集的句柄,在使用完成之后是需要在finally里面去调用resultSet.close()方法的。

 2.数据库底层是存在事务控制的,如果未关闭cursor,会锁住某些文件不让修改和写入。

分享
微博
QQ
微信
回复
2021-12-13 14:39:04
相关问题
鸿蒙的RDB数据库好用吗
2564浏览 • 2回复 已解决
HarmonyOS 数据库框架
370浏览 • 1回复 待解决
OrmDatabase 数据库问题
3577浏览 • 1回复 待解决
多个数据库,同步数据
1917浏览 • 1回复 待解决
鸿蒙操作系统的数据库操作
10210浏览 • 1回复 待解决
HarmonyOS 数据库数据更新怎么监听?
171浏览 • 1回复 待解决
HarmonyOS 数据库dataORM插入数据失败
251浏览 • 1回复 待解决
数据中台数据库选择问题
2033浏览 • 1回复 待解决
HarmonyOS 关系型数据库批量插入数据
352浏览 • 1回复 待解决