HarmonyOS 鸿蒙Next中键值型数据库可以用什么工具进行查看?

HarmonyOS 鸿蒙Next中键值型数据库可以用什么工具进行查看? 用了sqlite的各种查看工具都查看不了,有没有什么其它方法?

4 回复

1、可以使用三方库[@hulu/debug-db](https://ohpm.openharmony.cn/#/cn/detail/@hulu%2Fdebug-db)进行查看

ohpm install [@hulu](/user/hulu)/debug-db

cke_1142.png

简单使用,在EntryAbility中开启:

export default class EntryAbility extends UIAbility {
  onWindowStageCreate(windowStage: window.WindowStage): void {
    import('[@hulu](/user/hulu)/debug-db').then(async (ns: ESObject) => {
      await ns.DebugDB.initialize(this.context, { port: 8080, defaultStart: true });
    });
  }
}

如果运行有报错的,定位到相关代码进行注释试试,运行成功后即可在控制台找到对应的地址,打开即可,需要确保手机与电脑处于同一局域网下,如果8080端口冲突被占用,设置成其它端口即可。

DebugDB: You can access DebugDB through http://XXX.XXX.XXX.XX:8080/index.html

cke_53421.png

更多关于HarmonyOS 鸿蒙Next中键值型数据库可以用什么工具进行查看?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


dev自带的那个数据库查看可以看到,

鸿蒙Next中查看键值型数据库可使用DevEco Studio的Database Inspector工具。该工具支持实时查看、编辑和管理设备上的键值型数据库内容,包括查询、修改和删除操作。需在设备上启用调试模式并通过USB连接。Database Inspector直接集成在IDE中,无需额外安装第三方工具。

在HarmonyOS Next中,键值型数据库(如使用@ohos.data.relationalStore@ohos.data.distributedKVStore创建的数据库)与SQLite的存储格式和访问方式不同,因此传统的SQLite可视化工具无法直接打开或查看。

目前,官方并未提供专门的图形化工具来直接浏览设备上的数据库文件。你可以通过以下方式进行调试和查看:

  1. 使用日志输出:在应用开发过程中,最直接的方式是在代码中,在关键操作(如插入、查询)后,将数据库的查询结果或状态通过console.log()hilog打印到日志中,通过DevEco Studio的日志面板查看。

  2. 导出数据库文件到本地分析

    • 如果应用部署在真机或模拟器上,你可以通过hdc(HarmonyOS Device Connector)工具将应用的数据库文件从设备中拉取到本地计算机。
    • 数据库文件通常位于应用沙箱目录下,例如 /data/app/el2/100/base/<package-name>/database/
    • 使用hdc file recv命令将文件复制到本地。但由于其是专有格式,拉取到本地后,依然无法用通用SQLite工具打开。
  3. 通过代码接口查询:编写临时的调试代码,调用数据库的查询API(如relationalStore.RdbStore.querydistributedKVStore.getResultSet),遍历所有数据并格式化输出到日志或文件,这是最可靠的查看方式。

由于HarmonyOS Next的键值型数据库是系统级封装,为保证安全性和性能,其存储格式未公开,因此没有第三方可视化工具支持。调试时主要需依赖代码级的日志输出。

回到顶部