# 单版本分布式数据库 - [导入模块](#zh-cn_topic_0000001129947446_s56d19203690d4782bfc74069abb6bd71) - [权限](#zh-cn_topic_0000001129947446_section11257113618419) - [SingleKVStore](#zh-cn_topic_0000001129947446_section12882825611) - [get\(key: string, callback: AsyncCallback\): void](#zh-cn_topic_0000001129947446_section2013623011386) - [get\(key: string\): Promise](#zh-cn_topic_0000001129947446_section5647141894316) - [sync\(deviceIdList: string\[\], mode: SyncMode, allowedDelayMs?: number\): void](#zh-cn_topic_0000001129947446_section06419235582) > **说明:** >从 API Version 7 开始支持。 ## 导入模块 ``` import factory from '@ohos.data.distributeddata'; ``` ## 权限 无 ## SingleKVStore 单版本分布式数据库,继承自分布式数据库,支持查询、同步数据,也具备分布式数据库的所有的接口能力。需要先通过[getKVStore](js-apis-data-kvmanager.md#zh-cn_topic_0000001179090937_section51960467216)获取实例。 ### get\(key: string, callback: AsyncCallback\): void 获取指定键的值。 此方法为异步callback方法。 - 参数: 参数名 类型 说明 key string 要查询数据的key。不能为空且长度不大于1KB callback AsyncCallback<Uint8Array | string | boolean | number> 回调函数,获取查询的值。 - 返回值: 无 - 示例: ``` kvStore.get('key-001', function(err, value){ console.info(value); }); ``` ### get\(key: string\): Promise 获取指定键的值。 此方法为异步promise方法。 - 参数: 参数名 类型 说明 key string 要查询数据的key。不能为空且长度不大于1KB - 返回值: 类型 说明 Promise<Uint8Array | string | boolean | number> promise实例,用于获取异步返回结果。 - 示例: ``` const promise = kvStore.get('key-001'); promise.then((data) => { console.info(value); }).catch((err) => { }); ``` ### sync\(deviceIdList: string\[\], mode: SyncMode, allowedDelayMs?: number\): void 在手动模式下,触发数据库同步。 此方法为同步方法。 - 参数: 参数名 类型 必填 说明 deviceIdList string[] 是 同一组网环境下,需要同步的设备networkid列表。 mode SyncMode 是 同步类型。 0:PUSH_ONLY, 1: PULL_ONLY, 2: PUSH_PULL allowedDelayMs number 否 可选参数。允许延时时间,单位毫秒。 - 返回值: 无 - 示例: ``` kvStore.sync(deviceIds, 1, 1000); ```
参数名
类型
说明
key
string
要查询数据的key。不能为空且长度不大于1KB
callback
AsyncCallback<Uint8Array | string | boolean | number>
回调函数,获取查询的值。
Promise<Uint8Array | string | boolean | number>
promise实例,用于获取异步返回结果。
必填
deviceIdList
string[]
是
同一组网环境下,需要同步的设备networkid列表。
mode
SyncMode
同步类型。
0:PUSH_ONLY, 1: PULL_ONLY, 2: PUSH_PULL
allowedDelayMs
number
否
可选参数。允许延时时间,单位毫秒。