HarmonyOS 鸿蒙Next中官方支持比较好的的软件内嵌数据库是什么

HarmonyOS 鸿蒙Next中官方支持比较好的的软件内嵌数据库是什么 官方支持比较好的的软件内嵌数据库是什么,有示例工程最好

3 回复

可以参考官网文档,根据自身需求选择合适的: https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkdata

更多关于HarmonyOS 鸿蒙Next中官方支持比较好的的软件内嵌数据库是什么的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS Next中官方推荐的软件内嵌数据库是关系型数据库(Relational Database)。该数据库基于SQLite内核,提供完整的本地数据管理能力,支持事务操作、数据加密和跨设备同步。开发者可通过DataAbility或直接使用相关API进行数据访问与操作,无需依赖Java或C语言环境。

在HarmonyOS Next中,官方推荐并支持较好的软件内嵌数据库是关系型数据库(RDB)。它基于SQLite,提供本地数据管理能力,支持事务操作、数据加密和跨设备同步(通过分布式能力)。以下是关键特性和简单示例:

特性:

  • 支持标准SQL语法
  • 数据加密(可选)
  • 事务处理
  • 跨设备数据同步(需结合分布式框架)

示例工程步骤:

  1. 定义数据模型

    import { relationalStore } from '[@kit](/user/kit).ArkData';
    
    export class Employee {
      id: number;
      name: string;
      age: number;
    }
    
  2. 初始化数据库

    const config: relationalStore.StoreConfig = {
      name: 'Employee.db',
      securityLevel: relationalStore.SecurityLevel.S1
    };
    let store: relationalStore.RdbStore;
    relationalStore.getRdbStore(context, config).then((rdbStore) => {
      store = rdbStore;
    });
    
  3. 创建表

    const SQL_CREATE_TABLE = 'CREATE TABLE IF NOT EXISTS EMPLOYEE (ID INTEGER PRIMARY KEY AUTOINCREMENT, NAME TEXT NOT NULL, AGE INTEGER)';
    await store.executeSql(SQL_CREATE_TABLE);
    
  4. 插入数据

    await store.executeSql('INSERT INTO EMPLOYEE (NAME, AGE) VALUES (?, ?)', ['张三', 30]);
    
  5. 查询数据

    let resultSet = await store.querySql('SELECT * FROM EMPLOYEE');
    // 遍历结果...
    

官方文档提供了完整示例,可在DevEco Studio的模板或示例代码中搜索“RDB”参考。注意确保在module.json5中配置所需权限。

回到顶部