分布式数据库操作描述

About 10 min

分布式数据库操作描述

说明: 从 API Version 7 开始支持。

导入模块

import factory from '@ohos.data.distributeddata';
1

权限

KVStore

表示分布式数据库,并提供添加数据、删除数据和订阅数据变更的方法。

put(key: string, value: Uint8Array | string | number | boolean, callback: AsyncCallback<void>): void

添加指定类型键值对到数据库。

此方法是异步callback方法。

  • 参数:

    参数名

    类型

    说明

    key

    string

    要添加数据的key。不能为空且长度不大于1KB。

    value

    Uint8Array | string | number | boolean

    存储的新值。支持Uint8Array、number 、 string 、boolean。

    Uint8Array的长度小于4M。

    callback

    AsyncCallback<void>

    回调函数。

  • 返回值:

  • 示例

    kvStore.put('key-001', 'value-001', function(err, value){
    });
    
    1
    2

put(key: string, value: Uint8Array | string | number | boolean): Promise<void>

添加指定类型键值对到数据库。

此方法是异步promise方法。

  • 参数:

    参数名

    类型

    说明

    key

    string

    要添加数据的key。不能为空且长度不大于1KB。

    value

    Uint8Array | string | number | boolean

    要添加的数据。支持Uint8Array、number 、 string 、boolean。

    Uint8Array和string类型的value长度必须小于4MB。

  • 返回值:

    类型

    说明

    Promise<void>

    Promise实例,用于异步处理。

  • 示例

    const promise = kvStore.put('key-001', 'value-001');
        promise.then((data) => {
        }).catch((err) => {
        });
    
    1
    2
    3
    4

delete(key: string, callback: AsyncCallback<void>): void

从数据库中删除指定键值的数据。

此方法是异步callback方法。

  • 参数:

    参数名

    类型

    说明

    key

    string

    要删除数据的key。不能为空且长度不大于1KB。

    callback

    AsyncCallback<void>

    回调函数。

  • 返回值:

  • 示例

    kvStore.delete('key-001', function(err, value){
    });
    
    1
    2

delete(key: string): Promise<void>

从数据库中删除指定键值的数据。

此方法是异步promise方法。

  • 参数:

    参数名

    类型

    说明

    key

    string

    要删除数据的key。不能为空且长度不大于1KB。

  • 返回值:

    类型

    说明

    Promise<void>

    Promise实例,用于异步处理。

  • 示例

    const promise = kvStore.delete('key-001');
          promise.then((data) => {
          }).catch((err) => {
          });
    
    1
    2
    3
    4

on(event: 'dataChange', type: SubscribeType, observer: Callback<ChangeNotification>): void

订阅指定类型的数据更改通知。

此方法是同步方法。

  • 参数:

    参数名

    类型

    说明

    event

    'dataChange'

    回调函数名称。

    type

    SubscribeType

    表示订阅的类型。具体参考SubscribeType。

    observer

    Callback<ChangeNotification>

    回调函数。

  • 返回值:

  • 示例

    kvStore.on('dataChange', 0, function(notification){
    });
    
    1
    2

on(event: 'syncComplete', syncCallback: Callback<Array<[string, number]>>): void

订阅指定类型的数据更改通知。

此方法是同步方法。

  • 参数:

    参数名

    类型

    说明

    event

    'syncComplete'

    回调函数名称。

    syncCallback

    Callback<Array<[string, number]>>

    回调函数。

  • 返回值:

  • 示例

    kvStore.on('syncComplete', function(data){
    });
    
    1
    2