鸿蒙数据库开发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数据库好用吗
2458浏览 • 2回复 已解决
鸿蒙操作系统的数据库操作
10037浏览 • 1回复 待解决
HarmonyOS 数据库框架
269浏览 • 1回复 待解决
OrmDatabase 数据库问题
3474浏览 • 1回复 待解决
多个数据库,同步数据
1814浏览 • 1回复 待解决
关于鸿蒙分布式数据库key疑问
5727浏览 • 1回复 待解决
HarmonyOS 数据库dataORM插入数据失败
116浏览 • 1回复 待解决
数据中台数据库选择问题
1947浏览 • 1回复 待解决
HarmonyOS 关系型数据库批量插入数据
155浏览 • 1回复 待解决
关系型数据库使用分享
1020浏览 • 1回复 待解决
数据库操作同步的方法
1729浏览 • 1回复 待解决
关于数据库调试报错问题
206浏览 • 0回复 待解决