harmony 鸿蒙数据管理开发常见问题

  • 2022-10-28
  • 浏览 (1016)

数据管理开发常见问题

如何将PixelMap的数据存储到数据库中

适用于:OpenHarmony SDK 3.2.3.5版本

PixelMap应该被转换成相应的ArrayBuffer再放进数据库。

参考文档:readPixelsToBuffer

如何获取rdb关系型数据库文件

适用于:OpenHarmony SDK 3.2.3.5版本,API9 Stage模型

开发者可使用hdc_std命令拷贝文件,其中文件路径为: /data/app/el2/100/database/包名/entry/db/ ,然后拷贝该路径下后缀为 .db、.db-shm、.db-wal的文件,拷贝完成后,可以通过SQLite工具打开该数据库文件。

示例:

 hdc_std file recv /data/app/el2/100/database/com.xxxx.xxxx/entry/db/test.db ./test.db

数据库在系统层面是否有锁机制,开发过程中是否需要关系数据库加锁问题

适用于:OpenHarmony SDK 3.2.5.5版本,API9 Stage模型

系统提供的分布式数据服务、关系型数据库和首选项均有锁机制,开发者无需关注。

数据库中加事务与不加事务的区别?

适用于:所有版本

在rdb中进行数据操作时,有可能会导致操作失败,出现意料之外的情况。当对数据库进行大量操作时,此种情况会导致部分数据操作失败,部分操作成功,导致部分数据丢失,可能会导致应用程序发生异常甚至崩溃。加事务后,则会将某一批操作组合成一个整体,要么同时成功,要么同时失败,则不会导致强关联的数据部分缺失的情况出现。

关系型数据库rdb支持哪些数据类型?

适用于:OpenHarmony SDK 3.0版本以上,API9 Stage模型

关系型数据库rdb支持的数据类型有:number、string、boolean。其中number为数组类型,支持Double,Long,Float,Int,Int64,最大精度为十进制17位数字。

如何查看数据库db文件

适用于:OpenHarmony SDK 3.2.6.5版本,API9 Stage模型

  1. 执行 hdc_std shell 命令进入系统

  2. 找到绝对路径:/data/app/el2/<userId默认是100>/database/<bundleName> 或找到沙箱路径:

a. 执行 ps -ef|grep hapName 命令找到对应应用的进程ID,

b. 数据库沙箱路径为:/proc/<应用进程ID>/root/data/storage/el2/database/。

  1. 在数据库的绝对路径或者沙箱路径下执行 find ./ -name “*.db” 即可找到数据库文件。

如何存储长文本数据

适用于:OpenHarmony SDK 3.2.5.5版本,API 9

  • 首选项Preferences数据中的Value为string类型时最大支持8192字节。

  • 分布式数据管理KV数据模型Value最大支持4M。

参考文档:首选项概述分布式数据服务概述

Stage模型数据共享DataShare开发

适用于:OpenHarmony SDK 3.2.5.5版本,API 9

Stage模型DataShare不可与FA模型DataAbility混用,连接的服务端应用需使用DataShareExtensionAbility实现。

参考文档:数据共享开发指导

你可能感兴趣的鸿蒙文章

harmony 鸿蒙常见问题

harmony 鸿蒙Ability框架开发常见问题

harmony 鸿蒙应用程序包管理开发常见问题

harmony 鸿蒙网络与连接开发常见问题

harmony 鸿蒙开发板使用常见问题

harmony 鸿蒙设备管理开发常见问题

harmony 鸿蒙DFX开发常见问题

harmony 鸿蒙公共事件与通知开发常见问题

harmony 鸿蒙文件管理开发常见问题

harmony 鸿蒙图形图像开发常见问题

0  赞