From a407d013e6c63b35fb1430768189f55b4ee91cca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=9B=E4=BA=9A=E8=8A=B3?= Date: Thu, 28 Jul 2022 09:48:17 +0000 Subject: [PATCH] =?UTF-8?q?fixed=205be3752=20from=20https://gitee.com/ge-y?= =?UTF-8?q?afang/docs/pulls/7339=20master=EF=BC=9Adatabase/database-mdds-g?= =?UTF-8?q?uidelines.md=EF=BC=9A=E5=88=86=E5=B8=83=E5=BC=8F=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9C=8D=E5=8A=A1=E6=8C=87=E5=8D=97=E4=BC=98=E5=8C=96?= =?UTF-8?q?=EF=BC=8C=E9=9C=80=E5=90=8C=E6=AD=A5=E7=BF=BB=E8=AF=91=20Signed?= =?UTF-8?q?-off-by:=20@ge-yafang=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../database/database-mdds-guidelines.md | 45 ++++++++++--------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/zh-cn/application-dev/database/database-mdds-guidelines.md b/zh-cn/application-dev/database/database-mdds-guidelines.md index db7bf2e754..4ec3c98335 100644 --- a/zh-cn/application-dev/database/database-mdds-guidelines.md +++ b/zh-cn/application-dev/database/database-mdds-guidelines.md @@ -9,19 +9,18 @@ 具体分布式数据相关功能接口请见[分布式数据管理](../reference/apis/js-apis-distributed-data.md)。 -OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种功能: **表1** 分布式数据服务关键API功能介绍 -| 功能分类 | 接口名称 | 描述 | -| -------------------------- | ------------------------------------------------------------ | ----------------------------------------------- | -| 分布式数据库创建。 | createKVManager(config: KVManagerConfig, callback: AsyncCallback<KVManager>): void
createKVManager(config: KVManagerConfig): Promise<KVManager> | 创建一个KVManager对象实例,用于管理数据库对象。 | -| 分布式数据库创建。 | getKVStore<T extends KVStore>(storeId: string, options: Options, callback: AsyncCallback<T>): void
getKVStore<T extends KVStore>(storeId: string, options: Options): Promise<T> | 指定Options和storeId,创建并获取KVStore数据库。 | -| 分布式数据增、删、改、查。 | put(key: string, value: Uint8Array \| string \| number \| boolean, callback: AsyncCallback<void>): void
put(key: string, value: Uint8Array \| string \| number \| boolean): Promise<void> | 插入和更新数据。 | -| 分布式数据增、删、改、查。 | delete(key: string, callback: AsyncCallback<void>): void
delete(key: string): Promise<void> | 删除数据。 | -| 分布式数据增、删、改、查。 | get(key: string, callback: AsyncCallback<Uint8Array \| string \| boolean \| number>): void
get(key: string): Promise<Uint8Array \| string \| boolean \| number> | 查询数据。 | -| 订阅分布式数据变化。 | on(event: 'dataChange', type: SubscribeType, observer: Callback<ChangeNotification>): void
on(event: 'syncComplete', syncCallback: Callback<Array<[string, number]>>): void | 订阅数据库中数据的变化。 | -| 分布式数据同步。 | sync(deviceIdList: string[], mode: SyncMode, allowedDelayMs?: number): void | 在手动模式下,触发数据库同步。 | +| 接口名称 | 描述 | +| ------------------------------------------------------------ | ----------------------------------------------- | +| createKVManager(config:KVManagerConfig,callback:AsyncCallback<KVManager>):void
createKVManager(config:KVManagerConfig):Promise<KVManager> | 创建一个`KVManager`对象实例,用于管理数据库对象。 | +| getKVStore<TextendsKVStore>(storeId:string,options:Options,callback:AsyncCallback<T>):void
getKVStore<TextendsKVStore>(storeId:string,options:Options):Promise<T> | 指定`Options`和`storeId`,创建并获取`KVStore`数据库。 | +| put(key:string,value:Uint8Array\|string\|number\|boolean,callback:AsyncCallback<void>):void
put(key:string,value:Uint8Array\|string\|number\|boolean):Promise<void> | 插入和更新数据。 | +| delete(key:string,callback:AsyncCallback<void>):void
delete(key:string):Promise<void> | 删除数据。 | +| get(key:string,callback:AsyncCallback<Uint8Array\|string\|boolean\|number>):void
get(key:string):Promise<Uint8Array\|string\|boolean\|number> | 查询数据。 | +| on(event:'dataChange',type:SubscribeType,observer:Callback<ChangeNotification>):void
on(event:'syncComplete',syncCallback:Callback<Array<[string,number]>>):void | 订阅数据库中数据的变化。 | +| sync(deviceIdList:string[],mode:SyncMode,allowedDelayMs?:number):void | 在手动模式下,触发数据库同步。 | @@ -36,7 +35,7 @@ OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种 ``` 2. 根据配置构造分布式数据库管理类实例。 - 1. 根据应用上下文创建KvManagerConfig对象。 + 1. 根据应用上下文创建`kvManagerConfig`对象。 2. 创建分布式数据库管理器实例。 以下为创建分布式数据库管理器的代码示例: @@ -65,7 +64,7 @@ OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种 3. 获取/创建分布式数据库。 1. 声明需要创建的分布式数据库ID描述。 - 2. 创建分布式数据库,建议关闭自动同步功能(autoSync:false),需要同步时主动调用sync接口。 + 2. 创建分布式数据库,建议关闭自动同步功能(`autoSync:false`),需要同步时主动调用`sync`接口。 以下为创建分布式数据库的代码示例: ```js @@ -92,9 +91,10 @@ OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种 } ``` - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 组网设备间同步数据的场景,建议在应用启动时打开分布式数据库,获取数据库的句柄。在该句柄(如上例中的kvStore)的生命周期内无需重复创建数据库,可直接使用句柄对数据库进行数据的插入等操作。 - + > **说明:** + > + > 组网设备间同步数据的场景,建议在应用启动时打开分布式数据库,获取数据库的句柄。在该句柄(如示例中的`kvStore`)的生命周期内无需重复创建数据库,可直接使用句柄对数据库进行数据的插入等操作。 + 4. 订阅分布式数据变化。 以下为订阅单版本分布式数据库数据变化通知的代码示例: ```js @@ -104,7 +104,7 @@ OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种 ``` 5. 将数据写入分布式数据库。 - 1. 构造需要写入分布式数据库的Key(键)和Value(值)。 + 1. 构造需要写入分布式数据库的`Key`(键)和`Value`(值)。 2. 将键值数据写入分布式数据库。 以下为将字符串类型键值数据写入分布式数据库的代码示例: @@ -126,7 +126,7 @@ OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种 ``` 6. 查询分布式数据库数据。 - 1. 构造需要从单版本分布式数据库中查询的Key(键)。 + 1. 构造需要从单版本分布式数据库中查询的`Key`(键)。 2. 从单版本分布式数据库中获取数据。 以下为从分布式数据库中查询字符串类型数据的代码示例: @@ -150,9 +150,13 @@ OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种 ``` 7. 同步数据到其他设备。 - 1.选择同一组网环境下的设备以及同步模式,进行数据同步。 + 选择同一组网环境下的设备以及同步模式,进行数据同步。 - 以下为单版本分布式数据库进行数据同步的代码示例,其中deviceIds可由deviceManager调用getTrustedDeviceListSync()方法得到,1000表示最大延迟时间为1000ms: + > **说明**: + > + > 其中`deviceManager`模块的接口均为系统接口。 + + 以下为单版本分布式数据库进行数据同步的代码示例: ```js import deviceManager from '@ohos.distributedHardware.deviceManager'; @@ -161,7 +165,7 @@ OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种 deviceManager.createDeviceManager("bundleName", (err, value) => { if (!err) { devManager = value; - // get deviceIds + // deviceIds由deviceManager调用getTrustedDeviceListSync方法得到 let deviceIds = []; if (devManager != null) { var devices = devManager.getTrustedDeviceListSync(); @@ -170,6 +174,7 @@ OpenHarmony系统中的分布式数据服务模块为开发者提供下面几种 } } try{ + // 1000表示最大延迟时间为1000ms kvStore.sync(deviceIds, distributedData.SyncMode.PUSH_ONLY, 1000); }catch (e) { console.log("An unexpected error occurred. Error:" + e); -- GitLab