提交 4445b933 编写于 作者: W wangkai

change 3_31

Signed-off-by: Nwangkai <wangkai424@huawei.com>
上级 0a4431c3
......@@ -16,6 +16,8 @@
>- 从API Version 9开始,该接口不再维护,推荐使用新接口[`@ohos.data.distributedKVStore`](js-apis-distributedKVStore.md)。
>
>- 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
>
>- 本模块中所有需要获取deviceId的接口,都仅系统应用可用。
## 导入模块
......@@ -88,22 +90,19 @@ createKVManager(config: KVManagerConfig): Promise&lt;KVManager&gt;
**示例:**
```js
let kvManager;
try {
const kvManagerConfig = {
bundleName : 'com.example.datamanagertest',
userInfo : {
userId : '0',
userType : distributedData.UserType.SAME_USER_ID
bundleName: 'com.example.datamanagertest',
userInfo: {
userId: '0',
userType: distributedData.UserType.SAME_USER_ID
}
}
distributedData.createKVManager(kvManagerConfig, function (err, manager) {
if (err) {
console.log("Failed to create KVManager: " + JSON.stringify(err));
return;
}
distributedData.createKVManager(kvManagerConfig).then((manager) => {
console.log("Succeeded in creating KVManager");
kvManager = manager;
}).catch((err) => {
console.error("Failed to create KVManager: " + JSON.stringify(err));
});
} catch (e) {
console.log("An unexpected error occurred. Error:" + e);
......@@ -2012,6 +2011,10 @@ try {
deviceId(deviceId:string):Query
添加设备ID作为key的前缀。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core
......@@ -3664,6 +3667,10 @@ try {
removeDeviceData(deviceId: string, callback: AsyncCallback&lt;void&gt;): void
删除指定设备的数据,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core
......@@ -3706,6 +3713,10 @@ try {
removeDeviceData(deviceId: string): Promise&lt;void&gt;
删除指定设备的数据,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core
......@@ -4084,6 +4095,10 @@ try {
get(deviceId: string, key: string, callback: AsyncCallback&lt;boolean|string|number|Uint8Array&gt;): void
获取与指定设备ID和key匹配的string值,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4119,6 +4134,10 @@ try{
get(deviceId: string, key: string): Promise&lt;boolean|string|number|Uint8Array&gt;
获取与指定设备ID和key匹配的string值,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4163,6 +4182,10 @@ try {
getEntries(deviceId: string, keyPrefix: string, callback: AsyncCallback&lt;Entry[]&gt;): void
获取与指定设备ID和key前缀匹配的所有键值对,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4211,6 +4234,10 @@ try {
getEntries(deviceId: string, keyPrefix: string): Promise&lt;Entry[]&gt;
获取与指定设备ID和key前缀匹配的所有键值对,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4380,6 +4407,10 @@ try {
getEntries(deviceId: string, query: Query, callback: AsyncCallback&lt;Entry[]&gt;): void
获取与指定设备ID和Query对象匹配的键值对列表,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4433,6 +4464,10 @@ try {
getEntries(deviceId: string, query: Query): Promise&lt;Entry[]&gt;
获取与指定设备ID和Query对象匹配的键值对列表,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4493,6 +4528,10 @@ try {
getResultSet(deviceId: string, keyPrefix: string, callback: AsyncCallback&lt;KvStoreResultSet&gt;): void
获取与指定设备ID和key前缀匹配的KvStoreResultSet对象,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4528,6 +4567,10 @@ try {
getResultSet(deviceId: string, keyPrefix: string): Promise&lt;KvStoreResultSet&gt;
获取与指定设备ID和key前缀匹配的KvStoreResultSet对象,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4688,6 +4731,10 @@ try {
getResultSet(deviceId: string, query: Query, callback: AsyncCallback&lt;KvStoreResultSet&gt;): void
获取与指定设备ID和Query对象匹配的KvStoreResultSet对象,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4740,6 +4787,10 @@ try {
getResultSet(deviceId: string, query: Query): Promise&lt;KvStoreResultSet&gt;
获取与指定设备ID和Query对象匹配的KvStoreResultSet对象,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -4982,6 +5033,10 @@ try {
getResultSize(deviceId: string, query: Query, callback: AsyncCallback&lt;number&gt;): void;
获取与指定设备ID和Query对象匹配的结果数,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5029,6 +5084,10 @@ try {
getResultSize(deviceId: string, query: Query): Promise&lt;number&gt;
获取与指定设备ID和Query对象匹配的结果数,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5085,6 +5144,10 @@ try {
removeDeviceData(deviceId: string, callback: AsyncCallback&lt;void&gt;): void
从当前数据库中删除指定设备的数据,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5127,6 +5190,10 @@ try {
removeDeviceData(deviceId: string): Promise&lt;void&gt;
从当前数据库中删除指定设备的数据,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5176,6 +5243,9 @@ try {
sync(deviceIds: string[], mode: SyncMode, delayMs?: number): void
在手动同步方式下,触发数据库同步。关于分布式数据服务的同步方式说明,请见[分布式数据服务概述](../../database/database-mdds-overview.md)
> **说明:**
>
> 其中deviceIds通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
**需要权限**: ohos.permission.DISTRIBUTED_DATASYNC。
......
......@@ -13,6 +13,7 @@
> **说明:**
>
> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
> 本模块中所有需要获取deviceId的接口,都仅系统应用可用。
## 导入模块
......@@ -236,13 +237,13 @@ try {
node.appendChild(child1);
node.appendChild(child2);
node.appendChild(child3);
console.log("appendNode " + JSON.stringify(node));
console.info("appendNode " + JSON.stringify(node));
child1 = null;
child2 = null;
child3 = null;
node = null;
} catch (e) {
console.log("AppendChild " + e);
console.error("AppendChild " + e);
}
```
......@@ -276,7 +277,7 @@ import UIAbility from '@ohos.app.ability.UIAbility';
let kvManager;
export default class EntryAbility extends UIAbility {
onCreate() {
console.log("MyAbilityStage onCreate")
console.info("MyAbilityStage onCreate")
let context = this.context
const kvManagerConfig = {
context: context,
......@@ -284,7 +285,7 @@ export default class EntryAbility extends UIAbility {
}
try {
kvManager = distributedKVStore.createKVManager(kvManagerConfig);
console.log("Succeeded in creating KVManager");
console.info("Succeeded in creating KVManager");
} catch (e) {
console.error(`Failed to create KVManager.code is ${e.code},message is ${e.message}`);
}
......@@ -304,7 +305,7 @@ const kvManagerConfig = {
}
try {
kvManager = distributedKVStore.createKVManager(kvManagerConfig);
console.log("Succeeded in creating KVManager");
console.info("Succeeded in creating KVManager");
} catch (e) {
console.error(`Failed to create KVManager.code is ${e.code},message is ${e.message}`);
}
......@@ -343,7 +344,6 @@ getKVStore&lt;T &gt;(storeId: string, options: Options, callback: AsyncCallback&
```js
let kvStore;
let kvManager;
try {
const options = {
createIfMissing: true,
......@@ -358,11 +358,11 @@ try {
console.error(`Fail to get KVStore.code is ${err.code},message is ${err.message}`);
return;
}
console.log("Succeeded in getting KVStore");
console.info("Succeeded in getting KVStore");
kvStore = store;
});
} catch (e) {
console.log(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
console.error(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
}
```
......@@ -400,7 +400,6 @@ getKVStore&lt;T &gt;(storeId: string, options: Options): Promise&lt;T&gt;
```js
let kvStore;
let kvManager;
try {
const options = {
createIfMissing: true,
......@@ -411,13 +410,13 @@ try {
securityLevel: distributedKVStore.SecurityLevel.S2,
};
kvManager.getKVStore('storeId', options).then((store) => {
console.log("Succeeded in getting KVStore");
console.info("Succeeded in getting KVStore");
kvStore = store;
}).catch((err) => {
console.error(`Fail to get KVStore.code is ${err.code},message is ${err.message}`);
});
} catch (e) {
console.log(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
console.error(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
}
```
......@@ -440,8 +439,6 @@ closeKVStore(appId: string, storeId: string, callback: AsyncCallback&lt;void&gt;
**示例:**
```js
let kvStore;
let kvManager;
const options = {
createIfMissing: true,
encrypt: false,
......@@ -453,14 +450,14 @@ const options = {
}
try {
kvManager.getKVStore('storeId', options, async function (err, store) {
console.log('Succeeded in getting KVStore');
console.info('Succeeded in getting KVStore');
kvStore = store;
kvManager.closeKVStore('appId', 'storeId', function (err, data) {
if (err != undefined) {
console.error(`Fail to close KVStore.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing KVStore');
console.info('Succeeded in closing KVStore');
});
});
} catch (e) {
......@@ -492,8 +489,6 @@ closeKVStore(appId: string, storeId: string): Promise&lt;void&gt;
**示例:**
```js
let kvManager;
let kvStore;
const options = {
createIfMissing: true,
encrypt: false,
......@@ -505,10 +500,10 @@ const options = {
}
try {
kvManager.getKVStore('storeId', options).then(async (store) => {
console.log('Succeeded in getting KVStore');
console.info('Succeeded in getting KVStore');
kvStore = store;
kvManager.closeKVStore('appId', 'storeId').then(() => {
console.log('Succeeded in closing KVStore');
console.info('Succeeded in closing KVStore');
}).catch((err) => {
console.error(`Fail to close KVStore.code is ${err.code},message is ${err.message}`);
});
......@@ -547,8 +542,6 @@ deleteKVStore(appId: string, storeId: string, callback: AsyncCallback&lt;void&gt
**示例:**
```js
let kvManager;
let kvStore;
const options = {
createIfMissing: true,
encrypt: false,
......@@ -564,14 +557,14 @@ try {
console.error(`Fail to get KVStore.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting KVStore');
console.info('Succeeded in getting KVStore');
kvStore = store;
kvManager.deleteKVStore('appId', 'storeId', function (err, data) {
if (err != undefined) {
console.error(`Fail to delete KVStore.code is ${err.code},message is ${err.message}`);
return;
}
console.log(`Succeeded in deleting KVStore`);
console.info(`Succeeded in deleting KVStore`);
});
});
} catch (e) {
......@@ -611,8 +604,6 @@ deleteKVStore(appId: string, storeId: string): Promise&lt;void&gt;
**示例:**
```js
let kvManager;
let kvStore;
const options = {
createIfMissing: true,
encrypt: false,
......@@ -624,10 +615,10 @@ const options = {
}
try {
kvManager.getKVStore('storeId', options).then(async (store) => {
console.log('Succeeded in getting KVStore');
console.info('Succeeded in getting KVStore');
kvStore = store;
kvManager.deleteKVStore('appId', 'storeId').then(() => {
console.log('Succeeded in deleting KVStore');
console.info('Succeeded in deleting KVStore');
}).catch((err) => {
console.error(`Fail to delete KVStore.code is ${err.code},message is ${err.message}`);
});
......@@ -657,15 +648,14 @@ getAllKVStoreId(appId: string, callback: AsyncCallback&lt;string[]&gt;): void
**示例:**
```js
let kvManager;
try {
kvManager.getAllKVStoreId('appId', function (err, data) {
if (err != undefined) {
console.error(`Fail to get AllKVStoreId.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting AllKVStoreId');
console.log(`GetAllKVStoreId size = ${data.length}`);
console.info('Succeeded in getting AllKVStoreId');
console.info(`GetAllKVStoreId size = ${data.length}`);
});
} catch (e) {
console.error(`Fail to get AllKVStoreId.code is ${e.code},message is ${e.message}`);
......@@ -695,12 +685,11 @@ getAllKVStoreId(appId: string): Promise&lt;string[]&gt;
**示例:**
```js
let kvManager;
try {
console.log('GetAllKVStoreId');
console.info('GetAllKVStoreId');
kvManager.getAllKVStoreId('appId').then((data) => {
console.log('Succeeded in getting AllKVStoreId');
console.log(`GetAllKVStoreId size = ${data.length}`);
console.info('Succeeded in getting AllKVStoreId');
console.info(`GetAllKVStoreId size = ${data.length}`);
}).catch((err) => {
console.error(`Fail to get AllKVStoreId.code is ${err.code},message is ${err.message}`);
});
......@@ -727,15 +716,14 @@ on(event: 'distributedDataServiceDie', deathCallback: Callback&lt;void&gt;): voi
**示例:**
```js
let kvManager;
try {
console.log('KVManagerOn');
console.info('KVManagerOn');
const deathCallback = function () {
console.log('death callback call');
console.info('death callback call');
}
kvManager.on('distributedDataServiceDie', deathCallback);
} catch (e) {
console.log(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
console.error(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
}
```
......@@ -757,21 +745,20 @@ off(event: 'distributedDataServiceDie', deathCallback?: Callback&lt;void&gt;): v
**示例:**
```js
let kvManager;
try {
console.log('KVManagerOff');
console.info('KVManagerOff');
const deathCallback = function () {
console.log('death callback call');
console.info('death callback call');
}
kvManager.off('distributedDataServiceDie', deathCallback);
} catch (e) {
console.log(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
console.error(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
}
```
## KVStoreResultSet
提供获取数据库结果集的相关方法,包括查询和移动数据读取位置等。
提供获取数据库结果集的相关方法,包括查询和移动数据读取位置等。(同时允许打开的结果集的最大数量为8个)
在调用KVStoreResultSet的方法前,需要先通过[getKVStore](#getkvstore)构建一个SingleKVStore或者DeviceKVStore实例。
......@@ -792,19 +779,18 @@ getCount(): number
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const count = resultSet.getCount();
console.log("getCount succeed:" + count);
console.info("getCount succeed:" + count);
} catch (e) {
console.log("getCount failed: " + e);
console.error("getCount failed: " + e);
}
```
......@@ -825,19 +811,18 @@ getPosition(): number
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeeded.');
console.info('getResultSet succeeded.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const position = resultSet.getPosition();
console.log("getPosition succeed:" + position);
console.info("getPosition succeed:" + position);
} catch (e) {
console.log("getPosition failed: " + e);
console.error("getPosition failed: " + e);
}
```
......@@ -858,19 +843,18 @@ moveToFirst(): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const moved1 = resultSet.moveToFirst();
console.log("moveToFirst succeed: " + moved1);
console.info("moveToFirst succeed: " + moved1);
} catch (e) {
console.log("moveToFirst failed " + e);
console.error("moveToFirst failed " + e);
}
```
......@@ -891,19 +875,18 @@ moveToLast(): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const moved2 = resultSet.moveToLast();
console.log("moveToLast succeed:" + moved2);
console.info("moveToLast succeed:" + moved2);
} catch (e) {
console.log("moveToLast failed: " + e);
console.error("moveToLast failed: " + e);
}
```
......@@ -924,19 +907,18 @@ moveToNext(): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const moved3 = resultSet.moveToNext();
console.log("moveToNext succeed: " + moved3);
console.info("moveToNext succeed: " + moved3);
} catch (e) {
console.log("moveToNext failed: " + e);
console.error("moveToNext failed: " + e);
}
```
......@@ -957,19 +939,18 @@ moveToPrevious(): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const moved4 = resultSet.moveToPrevious();
console.log("moveToPrevious succeed:" + moved4);
console.info("moveToPrevious succeed:" + moved4);
} catch (e) {
console.log("moveToPrevious failed: " + e);
console.error("moveToPrevious failed: " + e);
}
```
......@@ -996,19 +977,18 @@ move(offset: number): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('Succeeded in getting resultSet');
console.info('Succeeded in getting resultSet');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultSet.code is ${err.code},message is ${err.message}`);
});
const moved5 = resultSet.move(1);
console.log(`Succeeded in moving.moved5 = ${moved5}`);
console.info(`Succeeded in moving.moved5 = ${moved5}`);
} catch (e) {
console.log(`Fail to move.code is ${e.code},message is ${e.message}`);
console.error(`Fail to move.code is ${e.code},message is ${e.message}`);
}
```
......@@ -1035,17 +1015,16 @@ moveToPosition(position: number): boolean
**示例**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('Succeeded in getting resultSet');
console.info('Succeeded in getting resultSet');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultSet.code is ${err.code},message is ${err.message}`);
});
const moved6 = resultSet.moveToPosition(1);
console.log(`Succeeded in moving to position.moved6=${moved6}`);
console.info(`Succeeded in moving to position.moved6=${moved6}`);
} catch (e) {
console.error(`Fail to move to position.code is ${e.code},message is ${e.message}`);
}
......@@ -1068,19 +1047,18 @@ isFirst(): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const isfirst = resultSet.isFirst();
console.log("Check isFirst succeed:" + isfirst);
console.info("Check isFirst succeed:" + isfirst);
} catch (e) {
console.log("Check isFirst failed: " + e);
console.error("Check isFirst failed: " + e);
}
```
......@@ -1101,19 +1079,18 @@ isLast(): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const islast = resultSet.isLast();
console.log("Check isLast succeed: " + islast);
console.info("Check isLast succeed: " + islast);
} catch (e) {
console.log("Check isLast failed: " + e);
console.error("Check isLast failed: " + e);
}
```
......@@ -1134,19 +1111,18 @@ isBeforeFirst(): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const isbeforefirst = resultSet.isBeforeFirst();
console.log("Check isBeforeFirst succeed: " + isbeforefirst);
console.info("Check isBeforeFirst succeed: " + isbeforefirst);
} catch (e) {
console.log("Check isBeforeFirst failed: " + e);
console.error("Check isBeforeFirst failed: " + e);
}
```
......@@ -1167,19 +1143,18 @@ isAfterLast(): boolean
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const isafterlast = resultSet.isAfterLast();
console.log("Check isAfterLast succeed:" + isafterlast);
console.info("Check isAfterLast succeed:" + isafterlast);
} catch (e) {
console.log("Check isAfterLast failed: " + e);
console.error("Check isAfterLast failed: " + e);
}
```
......@@ -1200,25 +1175,24 @@ getEntry(): Entry
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('getResultSet succeed.');
console.info('getResultSet succeed.');
resultSet = result;
}).catch((err) => {
console.log('getResultSet failed: ' + err);
console.error('getResultSet failed: ' + err);
});
const entry = resultSet.getEntry();
console.log("getEntry succeed:" + JSON.stringify(entry));
console.info("getEntry succeed:" + JSON.stringify(entry));
} catch (e) {
console.log("getEntry failed: " + e);
console.error("getEntry failed: " + e);
}
```
## Query
使用谓词表示数据库查询,提供创建Query实例、查询数据库中的数据和添加谓词的方法。
使用谓词表示数据库查询,提供创建Query实例、查询数据库中的数据和添加谓词的方法。(一个Query对象中谓词数量上限为256个)
**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core
......@@ -1250,12 +1224,12 @@ reset(): Query
try {
let query = new distributedKVStore.Query();
query.equalTo("key", "value");
console.log("query is " + query.getSqlLike());
console.info("query is " + query.getSqlLike());
query.reset();
console.log("query is " + query.getSqlLike());
console.info("query is " + query.getSqlLike());
query = null;
} catch (e) {
console.log("simply calls should be ok :" + e);
console.error("simply calls should be ok :" + e);
}
```
......@@ -1286,7 +1260,7 @@ equalTo(field: string, value: number|string|boolean): Query
try {
let query = new distributedKVStore.Query();
query.equalTo("field", "value");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.ode is ${e.code},message is ${e.message}`);
......@@ -1320,7 +1294,7 @@ notEqualTo(field: string, value: number|string|boolean): Query
try {
let query = new distributedKVStore.Query();
query.notEqualTo("field", "value");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1353,7 +1327,7 @@ greaterThan(field: string, value: number|string|boolean): Query
try {
let query = new distributedKVStore.Query();
query.greaterThan("field", "value");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1388,7 +1362,7 @@ lessThan(field: string, value: number|string): Query
try {
let query = new distributedKVStore.Query();
query.lessThan("field", "value");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1423,7 +1397,7 @@ greaterThanOrEqualTo(field: string, value: number|string): Query
try {
let query = new distributedKVStore.Query();
query.greaterThanOrEqualTo("field", "value");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1458,7 +1432,7 @@ lessThanOrEqualTo(field: string, value: number|string): Query
try {
let query = new distributedKVStore.Query();
query.lessThanOrEqualTo("field", "value");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1491,7 +1465,7 @@ isNull(field: string): Query
try {
let query = new distributedKVStore.Query();
query.isNull("field");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1525,7 +1499,7 @@ inNumber(field: string, valueList: number[]): Query
try {
let query = new distributedKVStore.Query();
query.inNumber("field", [0, 1]);
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1559,7 +1533,7 @@ inString(field: string, valueList: string[]): Query
try {
let query = new distributedKVStore.Query();
query.inString("field", ['test1', 'test2']);
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1593,7 +1567,7 @@ notInNumber(field: string, valueList: number[]): Query
try {
let query = new distributedKVStore.Query();
query.notInNumber("field", [0, 1]);
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1627,7 +1601,7 @@ notInString(field: string, valueList: string[]): Query
try {
let query = new distributedKVStore.Query();
query.notInString("field", ['test1', 'test2']);
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1661,7 +1635,7 @@ like(field: string, value: string): Query
try {
let query = new distributedKVStore.Query();
query.like("field", "value");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1695,7 +1669,7 @@ unlike(field: string, value: string): Query
try {
let query = new distributedKVStore.Query();
query.unlike("field", "value");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1724,10 +1698,10 @@ try {
query.notEqualTo("field", "value1");
query.and();
query.notEqualTo("field", "value2");
console.log("query is " + query.getSqlLike());
console.info("query is " + query.getSqlLike());
query = null;
} catch (e) {
console.log("duplicated calls should be ok :" + e);
console.error("duplicated calls should be ok :" + e);
}
```
......@@ -1753,10 +1727,10 @@ try {
query.notEqualTo("field", "value1");
query.or();
query.notEqualTo("field", "value2");
console.log("query is " + query.getSqlLike());
console.info("query is " + query.getSqlLike());
query = null;
} catch (e) {
console.log("duplicated calls should be ok :" + e);
console.error("duplicated calls should be ok :" + e);
}
```
......@@ -1787,7 +1761,7 @@ try {
let query = new distributedKVStore.Query();
query.notEqualTo("field", "value");
query.orderByAsc("field");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1821,7 +1795,7 @@ try {
let query = new distributedKVStore.Query();
query.notEqualTo("field", "value");
query.orderByDesc("field");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1858,7 +1832,7 @@ try {
let query = new distributedKVStore.Query();
query.notEqualTo("field", "value");
query.limit(total, offset);
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1891,7 +1865,7 @@ isNotNull(field: string): Query
try {
let query = new distributedKVStore.Query();
query.isNotNull("field");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -1920,10 +1894,10 @@ try {
query.beginGroup();
query.isNotNull("field");
query.endGroup();
console.log("query is " + query.getSqlLike());
console.info("query is " + query.getSqlLike());
query = null;
} catch (e) {
console.log("duplicated calls should be ok :" + e);
console.error("duplicated calls should be ok :" + e);
}
```
......@@ -1949,10 +1923,10 @@ try {
query.beginGroup();
query.isNotNull("field");
query.endGroup();
console.log("query is " + query.getSqlLike());
console.info("query is " + query.getSqlLike());
query = null;
} catch (e) {
console.log("duplicated calls should be ok :" + e);
console.error("duplicated calls should be ok :" + e);
}
```
......@@ -1983,7 +1957,7 @@ try {
let query = new distributedKVStore.Query();
query.prefixKey("$.name");
query.prefixKey("0");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -2017,7 +1991,7 @@ try {
let query = new distributedKVStore.Query();
query.setSuggestIndex("$.name");
query.setSuggestIndex("0");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
query = null;
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
......@@ -2029,6 +2003,10 @@ try {
deviceId(deviceId:string):Query
添加设备ID作为key的前缀。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)
**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core
......@@ -2050,7 +2028,7 @@ deviceId(deviceId:string):Query
try {
let query = new distributedKVStore.Query();
query.deviceId("deviceId");
console.log(`query is ${query.getSqlLike()}`);
console.info(`query is ${query.getSqlLike()}`);
} catch (e) {
console.error(`duplicated calls should be ok.code is ${e.code},message is ${e.message}`);
}
......@@ -2076,9 +2054,9 @@ getSqlLike():string
try {
let query = new distributedKVStore.Query();
let sql1 = query.getSqlLike();
console.log(`GetSqlLike sql= ${sql1}`);
console.info(`GetSqlLike sql= ${sql1}`);
} catch (e) {
console.log("duplicated calls should be ok : " + e);
console.error("duplicated calls should be ok : " + e);
}
```
......@@ -2116,7 +2094,6 @@ put(key: string, value: Uint8Array | string | number | boolean, callback: AsyncC
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string';
const VALUE_TEST_STRING_ELEMENT = 'value-test-string';
try {
......@@ -2125,7 +2102,7 @@ try {
console.error(`Fail to put.code is ${err.code},message is ${err.message}`);
return;
}
console.log("Succeeded in putting");
console.info("Succeeded in putting");
});
} catch (e) {
console.error(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
......@@ -2165,12 +2142,11 @@ put(key: string, value: Uint8Array | string | number | boolean): Promise&lt;void
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string';
const VALUE_TEST_STRING_ELEMENT = 'value-test-string';
try {
kvStore.put(KEY_TEST_STRING_ELEMENT, VALUE_TEST_STRING_ELEMENT).then((data) => {
console.log(`Succeeded in putting.data=${data}`);
console.info(`Succeeded in putting.data=${data}`);
}).catch((err) => {
console.error(`Fail to put.code is ${err.code},message is ${err.message}`);
});
......@@ -2191,7 +2167,7 @@ putBatch(entries: Entry[], callback: AsyncCallback&lt;void&gt;): void
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------ |
| entries | [Entry](#entry)[] | 是 | 表示要批量插入的键值对。 |
| entries | [Entry](#entry)[] | 是 | 表示要批量插入的键值对。一个entries对象中允许的最大条目个数为128个 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数。 |
**错误码:**
......@@ -2206,7 +2182,6 @@ putBatch(entries: Entry[], callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -2220,20 +2195,20 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries, async function (err, data) {
if (err != undefined) {
console.error(`Fail to put Batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
kvStore.getEntries('batch_test_string_key', function (err, entries) {
if (err != undefined) {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
}
console.log('Succeeded in getting Entries');
console.log(`entries.length: ${entries.length}`);
console.log(`entries[0]: ${entries[0]}`);
console.info('Succeeded in getting Entries');
console.info(`entries.length: ${entries.length}`);
console.info(`entries[0]: ${entries[0]}`);
});
});
} catch (e) {
......@@ -2273,7 +2248,6 @@ putBatch(entries: Entry[]): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -2287,12 +2261,12 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries).then(async (entries) => {
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
kvStore.getEntries('batch_test_string_key').then((entries) => {
console.log('Succeeded in getting Entries');
console.log(`PutBatch ${entries}`);
console.info('Succeeded in getting Entries');
console.info(`PutBatch ${entries}`);
}).catch((err) => {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
});
......@@ -2333,7 +2307,6 @@ putBatch(value: Array&lt;ValuesBucket&gt;, callback: AsyncCallback&lt;void&gt;):
**示例:**
```js
let kvStore;
try {
let v8Arr = [];
let arr = new Uint8Array([4, 5, 6, 7]);
......@@ -2349,7 +2322,7 @@ try {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
})
} catch (e) {
console.error(`Fail to put batch.code is ${e.code},message is ${e.message}`);
......@@ -2390,7 +2363,6 @@ putBatch(value: Array&lt;ValuesBucket&gt;): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
let v8Arr = [];
let arr = new Uint8Array([4, 5, 6, 7]);
......@@ -2402,7 +2374,7 @@ try {
v8Arr.push(vb2);
v8Arr.push(vb3);
kvStore.putBatch(v8Arr).then(async (data) => {
console.log(`Succeeded in putting patch`);
console.info(`Succeeded in putting patch`);
}).catch((err) => {
console.error(`putBatch fail.code is ${err.code},message is ${err.message}`);
});
......@@ -2438,7 +2410,6 @@ delete(key: string, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string';
const VALUE_TEST_STRING_ELEMENT = 'value-test-string';
try {
......@@ -2447,13 +2418,13 @@ try {
console.error(`Fail to put.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting');
console.info('Succeeded in putting');
kvStore.delete(KEY_TEST_STRING_ELEMENT, function (err, data) {
if (err != undefined) {
console.error(`Fail to delete.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in deleting');
console.info('Succeeded in deleting');
});
});
} catch (e) {
......@@ -2493,14 +2464,13 @@ delete(key: string): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string';
const VALUE_TEST_STRING_ELEMENT = 'value-test-string';
try {
kvStore.put(KEY_TEST_STRING_ELEMENT, VALUE_TEST_STRING_ELEMENT).then((data) => {
console.log(`Succeeded in putting: ${data}`);
console.info(`Succeeded in putting: ${data}`);
kvStore.delete(KEY_TEST_STRING_ELEMENT).then((data) => {
console.log('Succeeded in deleting');
console.info('Succeeded in deleting');
}).catch((err) => {
console.error(`Fail to delete.code is ${err.code},message is ${err.message}`);
});
......@@ -2542,16 +2512,24 @@ delete(predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallb
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let kvStore;
try {
let predicates = new dataSharePredicates.DataSharePredicates();
let arr = ["name"];
predicates.inKeys(arr);
kvStore.put("name", "bob", function (err, data) {
if (err != undefined) {
console.error(`Fail to put.code is ${err.code},message is ${err.message}`);
return;
}
console.log("Succeeded in putting");
kvStore.delete(predicates, function (err, data) {
if (err == undefined) {
console.log('Succeeded in deleting');
console.info('Succeeded in deleting');
} else {
console.error(`Fail to delete.code is ${err.code},message is ${err.message}`);
}
});
});
} catch (e) {
console.error(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
}
......@@ -2593,15 +2571,14 @@ delete(predicates: dataSharePredicates.DataSharePredicates): Promise&lt;void&gt;
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let kvStore;
try {
let predicates = new dataSharePredicates.DataSharePredicates();
let arr = ["name"];
predicates.inKeys(arr);
kvStore.put("name", "bob").then((data) => {
console.log(`Succeeded in putting: ${data}`);
console.info(`Succeeded in putting: ${data}`);
kvStore.delete(predicates).then((data) => {
console.log('Succeeded in deleting');
console.info('Succeeded in deleting');
}).catch((err) => {
console.error(`Fail to delete.code is ${err.code},message is ${err.message}`);
});
......@@ -2640,7 +2617,6 @@ deleteBatch(keys: string[], callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
let kvStore;
try {
let entries = [];
let keys = [];
......@@ -2656,19 +2632,19 @@ try {
entries.push(entry);
keys.push(key + i);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries, async function (err, data) {
if (err != undefined) {
console.error(`Fail to put Batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
kvStore.deleteBatch(keys, async function (err, data) {
if (err != undefined) {
console.error(`Fail to delete Batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in deleting Batch');
console.info('Succeeded in deleting Batch');
});
});
} catch (e) {
......@@ -2708,7 +2684,6 @@ deleteBatch(keys: string[]): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
let entries = [];
let keys = [];
......@@ -2724,11 +2699,11 @@ try {
entries.push(entry);
keys.push(key + i);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries).then(async (data) => {
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
kvStore.deleteBatch(keys).then((err) => {
console.log('Succeeded in deleting Batch');
console.info('Succeeded in deleting Batch');
}).catch((err) => {
console.error(`Fail to delete Batch.code is ${err.code},message is ${err.message}`);
});
......@@ -2745,6 +2720,10 @@ try {
removeDeviceData(deviceId: string, callback: AsyncCallback&lt;void&gt;): void
删除指定设备的数据,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -2766,20 +2745,19 @@ removeDeviceData(deviceId: string, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string_2';
const VALUE_TEST_STRING_ELEMENT = 'value-string-002';
try {
kvStore.put(KEY_TEST_STRING_ELEMENT, VALUE_TEST_STRING_ELEMENT, async function (err, data) {
console.log('Succeeded in putting data');
console.info('Succeeded in putting data');
const deviceid = 'no_exist_device_id';
kvStore.removeDeviceData(deviceid, async function (err, data) {
if (err == undefined) {
console.log('succeeded in removing device data');
console.info('succeeded in removing device data');
} else {
console.error(`Fail to remove device data.code is ${err.code},message is ${err.message} `);
kvStore.get(KEY_TEST_STRING_ELEMENT, async function (err, data) {
console.log('Succeeded in getting data');
console.info('Succeeded in getting data');
});
}
});
......@@ -2794,6 +2772,10 @@ try {
removeDeviceData(deviceId: string): Promise&lt;void&gt;
删除指定设备的数据,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -2820,23 +2802,22 @@ removeDeviceData(deviceId: string): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string_2';
const VALUE_TEST_STRING_ELEMENT = 'value-string-001';
try {
kvStore.put(KEY_TEST_STRING_ELEMENT, VALUE_TEST_STRING_ELEMENT).then((err) => {
console.log('Succeeded in putting data');
console.info('Succeeded in putting data');
}).catch((err) => {
console.error(`Fail to put data.code is ${err.code},message is ${err.message} `);
});
const deviceid = 'no_exist_device_id';
kvStore.removeDeviceData(deviceid).then((err) => {
console.log('succeeded in removing device data');
console.info('succeeded in removing device data');
}).catch((err) => {
console.error(`Fail to remove device data.code is ${err.code},message is ${err.message} `);
});
kvStore.get(KEY_TEST_STRING_ELEMENT).then((data) => {
console.log('Succeeded in getting data');
console.info('Succeeded in getting data');
}).catch((err) => {
console.error(`Fail to get data.code is ${err.code},message is ${err.message} `);
});
......@@ -2873,7 +2854,6 @@ get(key: string, callback: AsyncCallback&lt;boolean | string | number | Uint8Arr
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string';
const VALUE_TEST_STRING_ELEMENT = 'value-test-string';
try {
......@@ -2882,13 +2862,13 @@ try {
console.error(`Fail to put.code is ${err.code},message is ${err.message}`);
return;
}
console.log("Succeeded in putting");
console.info("Succeeded in putting");
kvStore.get(KEY_TEST_STRING_ELEMENT, function (err, data) {
if (err != undefined) {
console.error(`Fail to get.code is ${err.code},message is ${err.message}`);
return;
}
console.log(`Succeeded in getting data.data=${data}`);
console.info(`Succeeded in getting data.data=${data}`);
});
});
} catch (e) {
......@@ -2929,14 +2909,13 @@ get(key: string): Promise&lt;boolean | string | number | Uint8Array&gt;
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string';
const VALUE_TEST_STRING_ELEMENT = 'value-test-string';
try {
kvStore.put(KEY_TEST_STRING_ELEMENT, VALUE_TEST_STRING_ELEMENT).then((data) => {
console.log(`Succeeded in putting data.data=${data}`);
console.info(`Succeeded in putting data.data=${data}`);
kvStore.get(KEY_TEST_STRING_ELEMENT).then((data) => {
console.log(`Succeeded in getting data.data=${data}`);
console.info(`Succeeded in getting data.data=${data}`);
}).catch((err) => {
console.error(`Fail to get.code is ${err.code},message is ${err.message}`);
});
......@@ -2975,7 +2954,6 @@ getEntries(keyPrefix: string, callback: AsyncCallback&lt;Entry[]&gt;): void
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -2989,21 +2967,21 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries, async function (err, data) {
if (err != undefined) {
console.error(`Fail to put Batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
kvStore.getEntries('batch_test_string_key', function (err, entries) {
if (err != undefined) {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting Entries');
console.log(`entries.length: ${entries.length}`);
console.log(`entries[0]: ${entries[0]}`);
console.info('Succeeded in getting Entries');
console.info(`entries.length: ${entries.length}`);
console.info(`entries[0]: ${entries[0]}`);
});
});
} catch (e) {
......@@ -3043,7 +3021,6 @@ getEntries(keyPrefix: string): Promise&lt;Entry[]&gt;
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -3057,12 +3034,12 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries).then(async (entries) => {
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
kvStore.getEntries('batch_test_string_key').then((entries) => {
console.log('Succeeded in getting Entries');
console.log(`PutBatch ${entries}`);
console.info('Succeeded in getting Entries');
console.info(`PutBatch ${entries}`);
}).catch((err) => {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
});
......@@ -3101,7 +3078,6 @@ getEntries(query: Query, callback: AsyncCallback&lt;Entry[]&gt;): void
**示例:**
```js
let kvStore;
try {
var arr = new Uint8Array([21, 31]);
let entries = [];
......@@ -3116,9 +3092,9 @@ try {
}
entries.push(entry);
}
console.log(`entries: {entries}`);
console.info(`entries: {entries}`);
kvStore.putBatch(entries, async function (err, data) {
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getEntries(query, function (err, entries) {
......@@ -3126,9 +3102,9 @@ try {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting Entries');
console.log(`entries.length: ${entries.length}`);
console.log(`entries[0]: ${entries[0]}`);
console.info('Succeeded in getting Entries');
console.info(`entries.length: ${entries.length}`);
console.info(`entries[0]: ${entries[0]}`);
});
});
} catch (e) {
......@@ -3168,7 +3144,6 @@ getEntries(query: Query): Promise&lt;Entry[]&gt;
**示例:**
```js
let kvStore;
try {
var arr = new Uint8Array([21, 31]);
let entries = [];
......@@ -3183,20 +3158,20 @@ try {
}
entries.push(entry);
}
console.log(`entries: {entries}`);
console.info(`entries: {entries}`);
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getEntries(query).then((entries) => {
console.log('Succeeded in getting Entries');
console.info('Succeeded in getting Entries');
}).catch((err) => {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
});
}).catch((err) => {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`)
});
console.log('Succeeded in getting Entries');
console.info('Succeeded in getting Entries');
} catch (e) {
console.error(`Fail to get Entries.code is ${e.code},message is ${e.message}`);
}
......@@ -3229,7 +3204,6 @@ getResultSet(keyPrefix: string, callback: AsyncCallback&lt;KVStoreResultSet&gt;)
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -3249,20 +3223,20 @@ try {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
kvStore.getResultSet('batch_test_string_key', async function (err, result) {
if (err != undefined) {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
kvStore.closeResultSet(resultSet, function (err, data) {
if (err != undefined) {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
})
});
});
......@@ -3303,7 +3277,6 @@ getResultSet(keyPrefix: string): Promise&lt;KVStoreResultSet&gt;
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -3319,18 +3292,18 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
});
kvStore.closeResultSet(resultSet).then((err) => {
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
}).catch((err) => {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
});
......@@ -3366,7 +3339,6 @@ getResultSet(query: Query, callback: AsyncCallback&lt;KVStoreResultSet&gt;): voi
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -3386,7 +3358,7 @@ try {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSet(query, async function (err, result) {
......@@ -3394,7 +3366,7 @@ try {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
});
});
} catch (e) {
......@@ -3434,7 +3406,6 @@ getResultSet(query: Query): Promise&lt;KVStoreResultSet&gt;
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -3450,14 +3421,14 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSet(query).then((result) => {
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
......@@ -3498,7 +3469,6 @@ getResultSet(predicates: dataSharePredicates.DataSharePredicates, callback: Asyn
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let kvStore;
try {
let resultSet;
let predicates = new dataSharePredicates.DataSharePredicates();
......@@ -3508,14 +3478,14 @@ try {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
kvStore.closeResultSet(resultSet, function (err, data) {
if (err != undefined) {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
})
});
} catch (e) {
......@@ -3559,19 +3529,18 @@ getResultSet(predicates: dataSharePredicates.DataSharePredicates): Promise&lt;KV
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let kvStore;
try {
let resultSet;
let predicates = new dataSharePredicates.DataSharePredicates();
predicates.prefixKey("batch_test_string_key");
kvStore.getResultSet(predicates).then((result) => {
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
});
kvStore.closeResultSet(resultSet).then((err) => {
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
}).catch((err) => {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
});
......@@ -3598,12 +3567,11 @@ closeResultSet(resultSet: KVStoreResultSet, callback: AsyncCallback&lt;void&gt;)
**示例:**
```js
let kvStore;
try {
let resultSet = null;
kvStore.closeResultSet(resultSet, function (err, data) {
if (err == undefined) {
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
} else {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
}
......@@ -3636,11 +3604,10 @@ closeResultSet(resultSet: KVStoreResultSet): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
let resultSet = null;
kvStore.closeResultSet(resultSet).then(() => {
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
}).catch((err) => {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
});
......@@ -3676,7 +3643,6 @@ getResultSize(query: Query, callback: AsyncCallback&lt;number&gt;): void
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -3691,7 +3657,7 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries, async function (err, data) {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSize(query, async function (err, resultSize) {
......@@ -3699,7 +3665,7 @@ try {
console.error(`Fail to get result size.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting result set size');
console.info('Succeeded in getting result set size');
});
});
} catch (e) {
......@@ -3739,7 +3705,6 @@ getResultSize(query: Query): Promise&lt;number&gt;
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -3754,14 +3719,14 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSize(query).then((resultSize) => {
console.log('Succeeded in getting result set size');
console.info('Succeeded in getting result set size');
}).catch((err) => {
console.error(`Fail to get result size.code is ${err.code},message is ${err.message}`);
});
......@@ -3796,7 +3761,6 @@ backup(file:string, callback: AsyncCallback&lt;void&gt;):void
**示例:**
```js
let kvStore;
let file = "BK001";
try {
kvStore.backup(file, (err, data) => {
......@@ -3842,7 +3806,6 @@ backup(file:string): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
let file = "BK001";
try {
kvStore.backup(file).then((data) => {
......@@ -3881,7 +3844,6 @@ restore(file:string, callback: AsyncCallback&lt;void&gt;):void
**示例:**
```js
let kvStore;
let file = "BK001";
try {
kvStore.restore(file, (err, data) => {
......@@ -3927,7 +3889,6 @@ restore(file:string): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
let file = "BK001";
try {
kvStore.restore(file).then((data) => {
......@@ -3958,7 +3919,6 @@ deleteBackup(files:Array&lt;string&gt;, callback: AsyncCallback&lt;Array&lt;[str
**示例:**
```js
let kvStore;
let files = ["BK001", "BK002"];
try {
kvStore.deleteBackup(files, (err, data) => {
......@@ -3996,7 +3956,6 @@ deleteBackup(files:Array&lt;string&gt;): Promise&lt;Array&lt;[string, number]&gt
**示例:**
```js
let kvStore;
let files = ["BK001", "BK002"];
try {
kvStore.deleteBackup(files).then((data) => {
......@@ -4005,7 +3964,7 @@ try {
console.error(`Fail to delete Backup.code is ${err.code},message is ${err.message}`);
})
} catch (e) {
console.log(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
console.error(`An unexpected error occurred.code is ${e.code},message is ${e.message}`);
}
```
......@@ -4034,7 +3993,6 @@ startTransaction(callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
let kvStore;
function putBatchString(len, prefix) {
let entries = [];
for (var i = 0; i < len; i++) {
......@@ -4053,7 +4011,7 @@ function putBatchString(len, prefix) {
try {
var count = 0;
kvStore.on('dataChange', 0, function (data) {
console.log(`startTransaction 0 ${data}`);
console.info(`startTransaction 0 ${data}`);
count++;
});
kvStore.startTransaction(async function (err, data) {
......@@ -4061,15 +4019,15 @@ try {
console.error(`Fail to start Transaction.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in starting Transaction');
console.info('Succeeded in starting Transaction');
let entries = putBatchString(10, 'batch_test_string_key');
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries, async function (err, data) {
if (err != undefined) {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
});
});
} catch (e) {
......@@ -4102,15 +4060,14 @@ startTransaction(): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
var count = 0;
kvStore.on('dataChange', distributedKVStore.SubscribeType.SUBSCRIBE_TYPE_ALL, function (data) {
console.log(`startTransaction 0 ${data}`);
console.info(`startTransaction 0 ${data}`);
count++;
});
kvStore.startTransaction().then(async (err) => {
console.log('Succeeded in starting Transaction');
console.info('Succeeded in starting Transaction');
}).catch((err) => {
console.error(`Fail to start Transaction.code is ${err.code},message is ${err.message}`);
});
......@@ -4144,11 +4101,10 @@ commit(callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
let kvStore;
try {
kvStore.commit(function (err, data) {
if (err == undefined) {
console.log('Succeeded in committing');
console.info('Succeeded in committing');
} else {
console.error(`Fail to commit.code is ${err.code},message is ${err.message}`);
}
......@@ -4183,10 +4139,9 @@ commit(): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
kvStore.commit().then(async (err) => {
console.log('Succeeded in committing');
console.info('Succeeded in committing');
}).catch((err) => {
console.error(`Fail to commit.code is ${err.code},message is ${err.message}`);
});
......@@ -4220,11 +4175,10 @@ rollback(callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
let kvStore;
try {
kvStore.rollback(function (err,data) {
if (err == undefined) {
console.log('Succeeded in rolling back');
console.info('Succeeded in rolling back');
} else {
console.error(`Fail to rollback.code is ${err.code},message is ${err.message}`);
}
......@@ -4259,10 +4213,9 @@ rollback(): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
kvStore.rollback().then(async (err) => {
console.log('Succeeded in rolling back');
console.info('Succeeded in rolling back');
}).catch((err) => {
console.error(`Fail to rollback.code is ${err.code},message is ${err.message}`);
});
......@@ -4289,11 +4242,10 @@ enableSync(enabled: boolean, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
let kvStore;
try {
kvStore.enableSync(true, function (err, data) {
if (err == undefined) {
console.log('Succeeded in enabling sync');
console.info('Succeeded in enabling sync');
} else {
console.error(`Fail to enable sync.code is ${err.code},message is ${err.message}`);
}
......@@ -4326,10 +4278,9 @@ enableSync(enabled: boolean): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
kvStore.enableSync(true).then((err) => {
console.log('Succeeded in enabling sync');
console.info('Succeeded in enabling sync');
}).catch((err) => {
console.error(`Fail to enable sync.code is ${err.code},message is ${err.message}`);
});
......@@ -4357,7 +4308,6 @@ setSyncRange(localLabels: string[], remoteSupportLabels: string[], callback: Asy
**示例:**
```js
let kvStore;
try {
const localLabels = ['A', 'B'];
const remoteSupportLabels = ['C', 'D'];
......@@ -4366,7 +4316,7 @@ try {
console.error(`Fail to set syncRange.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in setting syncRange');
console.info('Succeeded in setting syncRange');
});
} catch (e) {
console.error(`An unexpected error occured.code is ${e.code},message is ${e.message}`);
......@@ -4397,12 +4347,11 @@ setSyncRange(localLabels: string[], remoteSupportLabels: string[]): Promise&lt;v
**示例:**
```js
let kvStore;
try {
const localLabels = ['A', 'B'];
const remoteSupportLabels = ['C', 'D'];
kvStore.setSyncRange(localLabels, remoteSupportLabels).then((err) => {
console.log('Succeeded in setting syncRange');
console.info('Succeeded in setting syncRange');
}).catch((err) => {
console.error(`Fail to set syncRange.code is ${err.code},message is ${err.message}`);
});
......@@ -4429,7 +4378,6 @@ setSyncParam(defaultAllowedDelayMs: number, callback: AsyncCallback&lt;void&gt;)
**示例:**
```js
let kvStore;
try {
const defaultAllowedDelayMs = 500;
kvStore.setSyncParam(defaultAllowedDelayMs, function (err, data) {
......@@ -4437,7 +4385,7 @@ try {
console.error(`Fail to set syncParam.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in setting syncParam');
console.info('Succeeded in setting syncParam');
});
} catch (e) {
console.error(`An unexpected error occured.code is ${e.code},message is ${e.message}`);
......@@ -4467,11 +4415,10 @@ setSyncParam(defaultAllowedDelayMs: number): Promise&lt;void&gt;
**示例:**
```js
let kvStore;
try {
const defaultAllowedDelayMs = 500;
kvStore.setSyncParam(defaultAllowedDelayMs).then((err) => {
console.log('Succeeded in setting syncParam');
console.info('Succeeded in setting syncParam');
}).catch((err) => {
console.error(`Fail to set syncParam.code is ${err.code},message is ${err.message}`);
});
......@@ -4516,7 +4463,6 @@ sync(deviceIds: string[], mode: SyncMode, delayMs?: number): void
import deviceManager from '@ohos.distributedHardware.deviceManager';
let devManager;
let kvStore;
const KEY_TEST_SYNC_ELEMENT = 'key_test_sync';
const VALUE_TEST_SYNC_ELEMENT = 'value-string-001';
// create deviceManager
......@@ -4532,14 +4478,14 @@ deviceManager.createDeviceManager('bundleName', (err, value) => {
}
try {
kvStore.on('syncComplete', function (data) {
console.log('Sync dataChange');
console.info('Sync dataChange');
});
kvStore.put(KEY_TEST_SYNC_ELEMENT + 'testSync101', VALUE_TEST_SYNC_ELEMENT, function (err, data) {
if (err != undefined) {
console.error(`Fail to sync.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting data');
console.info('Succeeded in putting data');
const mode = distributedKVStore.SyncMode.PULL_ONLY;
kvStore.sync(deviceIds, mode, 1000);
});
......@@ -4587,7 +4533,6 @@ sync(deviceIds: string[], query: Query, mode: SyncMode, delayMs?: number): void
import deviceManager from '@ohos.distributedHardware.deviceManager';
let devManager;
let kvStore;
const KEY_TEST_SYNC_ELEMENT = 'key_test_sync';
const VALUE_TEST_SYNC_ELEMENT = 'value-string-001';
// create deviceManager
......@@ -4603,14 +4548,14 @@ deviceManager.createDeviceManager('bundleName', (err, value) => {
}
try {
kvStore.on('syncComplete', function (data) {
console.log('Sync dataChange');
console.info('Sync dataChange');
});
kvStore.put(KEY_TEST_SYNC_ELEMENT + 'testSync101', VALUE_TEST_SYNC_ELEMENT, function (err, data) {
if (err != undefined) {
console.error(`Fail to sync.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting data');
console.info('Succeeded in putting data');
const mode = distributedKVStore.SyncMode.PULL_ONLY;
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
......@@ -4652,10 +4597,9 @@ on(event: 'dataChange', type: SubscribeType, listener: Callback&lt;ChangeNotific
**示例:**
```js
let kvStore;
try {
kvStore.on('dataChange', distributedKVStore.SubscribeType.SUBSCRIBE_TYPE_LOCAL, function (data) {
console.log(`dataChange callback call data: ${data}`);
console.info(`dataChange callback call data: ${data}`);
});
} catch (e) {
console.error(`An unexpected error occured.code is ${e.code},message is ${e.message}`);
......@@ -4680,15 +4624,14 @@ on(event: 'syncComplete', syncCallback: Callback&lt;Array&lt;[string, number]&gt
**示例:**
```js
let kvStore;
const KEY_TEST_FLOAT_ELEMENT = 'key_test_float';
const VALUE_TEST_FLOAT_ELEMENT = 321.12;
try {
kvStore.on('syncComplete', function (data) {
console.log(`syncComplete ${data}`);
console.info(`syncComplete ${data}`);
});
kvStore.put(KEY_TEST_FLOAT_ELEMENT, VALUE_TEST_FLOAT_ELEMENT).then((data) => {
console.log('succeeded in putting');
console.info('succeeded in putting');
}).catch((err) => {
console.error(`Fail to put.code is ${err.code},message is ${err.message}`);
});
......@@ -4723,10 +4666,9 @@ off(event:'dataChange', listener?: Callback&lt;ChangeNotification&gt;): void
**示例:**
```js
let kvStore;
class KvstoreModel {
call(data) {
console.log(`dataChange : ${data}`);
console.info(`dataChange : ${data}`);
}
subscribeDataChange() {
......@@ -4769,10 +4711,9 @@ off(event: 'syncComplete', syncCallback?: Callback&lt;Array&lt;[string, number]&
**示例:**
```js
let kvStore;
class KvstoreModel {
call(data) {
console.log(`syncComplete : ${data}`);
console.info(`syncComplete : ${data}`);
}
subscribeDataChange() {
......@@ -4822,14 +4763,13 @@ getSecurityLevel(callback: AsyncCallback&lt;SecurityLevel&gt;): void
**示例:**
```js
let kvStore;
try {
kvStore.getSecurityLevel(function (err, data) {
if (err != undefined) {
console.error(`Fail to get SecurityLevel.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting securityLevel');
console.info('Succeeded in getting securityLevel');
});
} catch (e) {
console.error(`An unexpected error occured.code is ${e.code},message is ${e.message}`);
......@@ -4861,10 +4801,9 @@ getSecurityLevel(): Promise&lt;SecurityLevel&gt;
**示例:**
```js
let kvStore;
try {
kvStore.getSecurityLevel().then((data) => {
console.log('Succeeded in getting securityLevel');
console.info('Succeeded in getting securityLevel');
}).catch((err) => {
console.error(`Fail to get SecurityLevel.code is ${err.code},message is ${err.message}`);
});
......@@ -4911,7 +4850,6 @@ get(key: string, callback: AsyncCallback&lt;boolean | string | number | Uint8Arr
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string';
const VALUE_TEST_STRING_ELEMENT = 'value-test-string';
try {
......@@ -4920,13 +4858,13 @@ try {
console.error(`Fail to put.code is ${err.code},message is ${err.message}`);
return;
}
console.log("Succeeded in putting");
console.info("Succeeded in putting");
kvStore.get(KEY_TEST_STRING_ELEMENT, function (err, data) {
if (err != undefined) {
console.error(`Fail to get.code is ${err.code},message is ${err.message}`);
return;
}
console.log(`Succeeded in getting data.data=${data}`);
console.info(`Succeeded in getting data.data=${data}`);
});
});
} catch (e) {
......@@ -4967,14 +4905,13 @@ get(key: string): Promise&lt;boolean | string | number | Uint8Array&gt;
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string';
const VALUE_TEST_STRING_ELEMENT = 'value-test-string';
try {
kvStore.put(KEY_TEST_STRING_ELEMENT, VALUE_TEST_STRING_ELEMENT).then((data) => {
console.log(`Succeeded in putting data.data=${data}`);
console.info(`Succeeded in putting data.data=${data}`);
kvStore.get(KEY_TEST_STRING_ELEMENT).then((data) => {
console.log(`Succeeded in getting data.data=${data}`);
console.info(`Succeeded in getting data.data=${data}`);
}).catch((err) => {
console.error(`Fail to get.code is ${err.code},message is ${err.message}`);
});
......@@ -4991,6 +4928,10 @@ try {
get(deviceId: string, key: string, callback: AsyncCallback&lt;boolean | string | number | Uint8Array&gt;): void
获取与指定设备ID和key匹配的string值,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5015,7 +4956,6 @@ get(deviceId: string, key: string, callback: AsyncCallback&lt;boolean | string |
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string_2';
const VALUE_TEST_STRING_ELEMENT = 'value-string-002';
try {
......@@ -5024,13 +4964,13 @@ try {
console.error(`Fail to put.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting');
console.info('Succeeded in putting');
kvStore.get('localDeviceId', KEY_TEST_STRING_ELEMENT, function (err, data) {
if (err != undefined) {
console.error(`Fail to get.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting');
console.info('Succeeded in getting');
});
})
} catch (e) {
......@@ -5043,6 +4983,10 @@ try {
get(deviceId: string, key: string): Promise&lt;boolean | string | number | Uint8Array&gt;
获取与指定设备ID和key匹配的string值,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5072,14 +5016,13 @@ get(deviceId: string, key: string): Promise&lt;boolean | string | number | Uint8
**示例:**
```js
let kvStore;
const KEY_TEST_STRING_ELEMENT = 'key_test_string_2';
const VALUE_TEST_STRING_ELEMENT = 'value-string-002';
try {
kvStore.put(KEY_TEST_STRING_ELEMENT, VALUE_TEST_STRING_ELEMENT).then(async (data) => {
console.log('Succeeded in putting');
console.info('Succeeded in putting');
kvStore.get('localDeviceId', KEY_TEST_STRING_ELEMENT).then((data) => {
console.log('Succeeded in getting');
console.info('Succeeded in getting');
}).catch((err) => {
console.error(`Fail to get.code is ${err.code},message is ${err.message}`);
});
......@@ -5118,7 +5061,6 @@ getEntries(keyPrefix: string, callback: AsyncCallback&lt;Entry[]&gt;): void
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -5132,21 +5074,21 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries, async function (err, data) {
if (err != undefined) {
console.error(`Fail to put Batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
kvStore.getEntries('batch_test_string_key', function (err, entries) {
if (err != undefined) {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting Entries');
console.log(`entries.length: ${entries.length}`);
console.log(`entries[0]: ${entries[0]}`);
console.info('Succeeded in getting Entries');
console.info(`entries.length: ${entries.length}`);
console.info(`entries[0]: ${entries[0]}`);
});
});
} catch (e) {
......@@ -5186,7 +5128,6 @@ getEntries(keyPrefix: string): Promise&lt;Entry[]&gt;
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -5200,12 +5141,12 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries).then(async (entries) => {
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
kvStore.getEntries('batch_test_string_key').then((entries) => {
console.log('Succeeded in getting Entries');
console.log(`PutBatch ${entries}`);
console.info('Succeeded in getting Entries');
console.info(`PutBatch ${entries}`);
}).catch((err) => {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
});
......@@ -5222,6 +5163,10 @@ try {
getEntries(deviceId: string, keyPrefix: string, callback: AsyncCallback&lt;Entry[]&gt;): void
获取与指定设备ID和key前缀匹配的所有键值对,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5245,7 +5190,6 @@ getEntries(deviceId: string, keyPrefix: string, callback: AsyncCallback&lt;Entry
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -5259,21 +5203,21 @@ try {
}
entries.push(entry);
}
console.log(`entries : ${entries}`);
console.info(`entries : ${entries}`);
kvStore.putBatch(entries, async function (err, data) {
if (err != undefined) {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
kvStore.getEntries('localDeviceId', 'batch_test_string_key', function (err, entries) {
if (err != undefined) {
console.error(`Fail to get entries.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting entries');
console.log(`entries.length: ${entries.length}`);
console.log(`entries[0]: ${entries[0]}`);
console.info('Succeeded in getting entries');
console.info(`entries.length: ${entries.length}`);
console.info(`entries[0]: ${entries[0]}`);
});
});
} catch (e) {
......@@ -5286,6 +5230,10 @@ try {
getEntries(deviceId: string, keyPrefix: string): Promise&lt;Entry[]&gt;
获取与指定设备ID和key前缀匹配的所有键值对,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5314,7 +5262,6 @@ getEntries(deviceId: string, keyPrefix: string): Promise&lt;Entry[]&gt;
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -5328,15 +5275,15 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.linfoog('Succeeded in putting batch');
kvStore.getEntries('localDeviceId', 'batch_test_string_key').then((entries) => {
console.log('Succeeded in getting entries');
console.log(`entries.length: ${entries.length}`);
console.log(`entries[0]: ${entries[0]}`);
console.log(`entries[0].value: ${entries[0].value}`);
console.log(`entries[0].value.value: ${entries[0].value.value}`);
console.info('Succeeded in getting entries');
console.info(`entries.length: ${entries.length}`);
console.info(`entries[0]: ${entries[0]}`);
console.info(`entries[0].value: ${entries[0].value}`);
console.info(`entries[0].value.value: ${entries[0].value.value}`);
}).catch((err) => {
console.error(`Fail to get entries.code is ${err.code},message is ${err.message}`);
});
......@@ -5375,7 +5322,6 @@ getEntries(query: Query, callback: AsyncCallback&lt;Entry[]&gt;): void
**示例:**
```js
let kvStore;
try {
var arr = new Uint8Array([21, 31]);
let entries = [];
......@@ -5390,9 +5336,9 @@ try {
}
entries.push(entry);
}
console.log(`entries: {entries}`);
console.info(`entries: {entries}`);
kvStore.putBatch(entries, async function (err, data) {
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getEntries(query, function (err, entries) {
......@@ -5400,9 +5346,9 @@ try {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting Entries');
console.log(`entries.length: ${entries.length}`);
console.log(`entries[0]: ${entries[0]}`);
console.info('Succeeded in getting Entries');
console.info(`entries.length: ${entries.length}`);
console.info(`entries[0]: ${entries[0]}`);
});
});
} catch (e) {
......@@ -5442,7 +5388,6 @@ getEntries(query: Query): Promise&lt;Entry[]&gt;
**示例:**
```js
let kvStore;
try {
var arr = new Uint8Array([21, 31]);
let entries = [];
......@@ -5457,20 +5402,20 @@ try {
}
entries.push(entry);
}
console.log(`entries: {entries}`);
console.info(`entries: {entries}`);
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting Batch');
console.info('Succeeded in putting Batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getEntries(query).then((entries) => {
console.log('Succeeded in getting Entries');
console.info('Succeeded in getting Entries');
}).catch((err) => {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`);
});
}).catch((err) => {
console.error(`Fail to get Entries.code is ${err.code},message is ${err.message}`)
});
console.log('Succeeded in getting Entries');
console.info('Succeeded in getting Entries');
} catch (e) {
console.error(`Fail to get Entries.code is ${e.code},message is ${e.message}`);
}
......@@ -5481,6 +5426,10 @@ try {
getEntries(deviceId: string, query: Query, callback: AsyncCallback&lt;Entry[]&gt;): void
获取与指定设备ID和Query对象匹配的键值对列表,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5504,7 +5453,6 @@ getEntries(deviceId: string, query: Query, callback: AsyncCallback&lt;Entry[]&gt
**示例:**
```js
let kvStore;
try {
var arr = new Uint8Array([21, 31]);
let entries = [];
......@@ -5519,13 +5467,13 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries, async function (err, data) {
if (err != undefined) {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
var query = new distributedKVStore.Query();
query.deviceId('localDeviceId');
query.prefixKey("batch_test");
......@@ -5534,12 +5482,12 @@ try {
console.error(`Fail to get entries.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting entries');
console.log(`entries.length: ${entries.length}`);
console.log(`entries[0]: ${entries[0]}`);
console.info('Succeeded in getting entries');
console.info(`entries.length: ${entries.length}`);
console.info(`entries[0]: ${entries[0]}`);
})
});
console.log('Succeeded in getting entries');
console.info('Succeeded in getting entries');
} catch (e) {
console.error(`Fail to get entries.code is ${e.code},message is ${e.message}`);
}
......@@ -5550,6 +5498,10 @@ try {
getEntries(deviceId: string, query: Query): Promise&lt;Entry[]&gt;
获取与指定设备ID和Query对象匹配的键值对列表,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5578,7 +5530,6 @@ getEntries(deviceId: string, query: Query): Promise&lt;Entry[]&gt;
**示例:**
```js
let kvStore;
try {
var arr = new Uint8Array([21, 31]);
let entries = [];
......@@ -5593,21 +5544,21 @@ try {
}
entries.push(entry);
}
console.log(`entries: ${entries}`);
console.info(`entries: ${entries}`);
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
var query = new distributedKVStore.Query();
query.deviceId('localDeviceId');
query.prefixKey("batch_test");
kvStore.getEntries('localDeviceId', query).then((entries) => {
console.log('Succeeded in getting entries');
console.info('Succeeded in getting entries');
}).catch((err) => {
console.error(`Fail to get entries.code is ${err.code},message is ${err.message}`);
});
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
console.log('Succeeded in getting entries');
console.info('Succeeded in getting entries');
} catch (e) {
console.error(`Fail to get entries.code is ${e.code},message is ${e.message}`);
}
......@@ -5640,7 +5591,6 @@ getResultSet(keyPrefix: string, callback: AsyncCallback&lt;KVStoreResultSet&gt;)
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -5660,20 +5610,20 @@ try {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
kvStore.getResultSet('batch_test_string_key', async function (err, result) {
if (err != undefined) {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
kvStore.closeResultSet(resultSet, function (err, data) {
if (err != undefined) {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
})
});
});
......@@ -5714,7 +5664,6 @@ getResultSet(keyPrefix: string): Promise&lt;KVStoreResultSet&gt;
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -5730,18 +5679,18 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
kvStore.getResultSet('batch_test_string_key').then((result) => {
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
});
kvStore.closeResultSet(resultSet).then((err) => {
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
}).catch((err) => {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
});
......@@ -5755,6 +5704,10 @@ try {
getResultSet(deviceId: string, keyPrefix: string, callback: AsyncCallback&lt;KVStoreResultSet&gt;): void
获取与指定设备ID和key前缀匹配的KVStoreResultSet对象,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5778,7 +5731,6 @@ getResultSet(deviceId: string, keyPrefix: string, callback: AsyncCallback&lt;KVS
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('localDeviceId', 'batch_test_string_key', async function (err, result) {
......@@ -5786,14 +5738,14 @@ try {
console.error(`Fail to get resultSet.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting resultSet');
console.info('Succeeded in getting resultSet');
resultSet = result;
kvStore.closeResultSet(resultSet, function (err, data) {
if (err != undefined) {
console.error(`Fail to close resultSet.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing resultSet');
console.info('Succeeded in closing resultSet');
})
});
} catch (e) {
......@@ -5806,6 +5758,10 @@ try {
getResultSet(deviceId: string, keyPrefix: string): Promise&lt;KVStoreResultSet&gt;
获取与指定设备ID和key前缀匹配的KVStoreResultSet对象,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5834,17 +5790,16 @@ getResultSet(deviceId: string, keyPrefix: string): Promise&lt;KVStoreResultSet&g
**示例:**
```js
let kvStore;
try {
let resultSet;
kvStore.getResultSet('localDeviceId', 'batch_test_string_key').then((result) => {
console.log('Succeeded in getting resultSet');
console.info('Succeeded in getting resultSet');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultSet.code is ${err.code},message is ${err.message}`);
});
kvStore.closeResultSet(resultSet).then((err) => {
console.log('Succeeded in closing resultSet');
console.info('Succeeded in closing resultSet');
}).catch((err) => {
console.error(`Fail to close resultSet.code is ${err.code},message is ${err.message}`);
});
......@@ -5858,6 +5813,10 @@ try {
getResultSet(deviceId: string, query: Query, callback: AsyncCallback&lt;KVStoreResultSet&gt;): void
获取与指定设备ID和Query对象匹配的KVStoreResultSet对象,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5881,7 +5840,6 @@ getResultSet(deviceId: string, query: Query, callback: AsyncCallback&lt;KVStoreR
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -5901,7 +5859,7 @@ try {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSet('localDeviceId', query, async function (err, result) {
......@@ -5909,14 +5867,14 @@ try {
console.error(`Fail to get resultSet.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting resultSet');
console.info('Succeeded in getting resultSet');
resultSet = result;
kvStore.closeResultSet(resultSet, function (err, data) {
if (err != undefined) {
console.error(`Fail to close resultSet.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing resultSet');
console.info('Succeeded in closing resultSet');
})
});
});
......@@ -5930,6 +5888,10 @@ try {
getResultSet(deviceId: string, query: Query): Promise&lt;KVStoreResultSet&gt;
获取与指定设备ID和Query对象匹配的KVStoreResultSet对象,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -5958,7 +5920,6 @@ getResultSet(deviceId: string, query: Query): Promise&lt;KVStoreResultSet&gt;
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -5974,22 +5935,22 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSet('localDeviceId', query).then((result) => {
console.log('Succeeded in getting resultSet');
console.info('Succeeded in getting resultSet');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultSet.code is ${err.code},message is ${err.message}`);
});
query.deviceId('localDeviceId');
console.log("GetResultSet " + query.getSqlLike());
console.info("GetResultSet " + query.getSqlLike());
kvStore.closeResultSet(resultSet).then((err) => {
console.log('Succeeded in closing resultSet');
console.info('Succeeded in closing resultSet');
}).catch((err) => {
console.error(`Fail to close resultSet.code is ${err.code},message is ${err.message}`);
});
......@@ -6031,7 +5992,6 @@ getResultSet(query: Query): Promise&lt;KVStoreResultSet&gt;
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -6047,14 +6007,14 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSet(query).then((result) => {
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
......@@ -6066,9 +6026,13 @@ try {
### getResultSet
getResultSet(deviceId: string, query: Query): Promise&lt;KVStoreResultSet&gt;
getResultSet(query: Query, callback:AsyncCallback&lt;KVStoreResultSet&gt;): void
获取与指定设备ID和Query对象匹配的KVStoreResultSet对象,使用Promise异步回调。
获取与本设备指定Query对象匹配的KVStoreResultSet对象,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -6076,14 +6040,9 @@ getResultSet(deviceId: string, query: Query): Promise&lt;KVStoreResultSet&gt;
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------- | ---- | ---------------------------------- |
| deviceId | string | 是 | KVStoreResultSet对象所属的设备ID。 |
| query | [Query](#query) | 是 | 表示查询对象。 |
| callback | AsyncCallback&lt;[KVStoreResultSet](#kvstoreresultset)&gt; | 是 | 回调函数,获取与指定Predicates对象匹配的KVStoreResultSet对象。 |
**返回值:**
| 类型 | 说明 |
| ---------------------------------------------------- | ------------------------------------------------------------ |
| Promise&lt;[KVStoreResultSet](#kvstoreresultset)&gt; | Promise对象。返回与指定设备ID和Query对象匹配的KVStoreResultSet对象。 |
**错误码:**
......@@ -6097,7 +6056,6 @@ getResultSet(deviceId: string, query: Query): Promise&lt;KVStoreResultSet&gt;
**示例:**
```js
let kvStore;
try {
let resultSet;
let entries = [];
......@@ -6112,27 +6070,30 @@ try {
}
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
}).catch((err) => {
kvStore.putBatch(entries, async function (err, data) {
if (err != undefined) {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
return;
}
console.log('Succeeded in putting batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSet('localDeviceId', query).then((result) => {
kvStore.getResultSet(query, async function (err, result) {
if (err != undefined) {
console.error(`Fail to get resultSet.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting resultSet');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultSet.code is ${err.code},message is ${err.message}`);
});
query.deviceId('localDeviceId');
console.log("GetResultSet " + query.getSqlLike());
kvStore.closeResultSet(resultSet).then((err) => {
console.log('Succeeded in closing resultSet');
}).catch((err) => {
kvStore.closeResultSet(resultSet, function (err, data) {
if (err != undefined) {
console.error(`Fail to close resultSet.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing resultSet');
})
});
});
} catch (e) {
console.error(`Fail to get resultSet.code is ${e.code},message is ${e.message}`);
}
......@@ -6169,7 +6130,6 @@ getResultSet(predicates: dataSharePredicates.DataSharePredicates, callback: Asyn
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let kvStore;
try {
let resultSet;
let predicates = new dataSharePredicates.DataSharePredicates();
......@@ -6179,14 +6139,14 @@ try {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
kvStore.closeResultSet(resultSet, function (err, data) {
if (err != undefined) {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
})
});
} catch (e) {
......@@ -6230,19 +6190,18 @@ getResultSet(predicates: dataSharePredicates.DataSharePredicates): Promise&lt;KV
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let kvStore;
try {
let resultSet;
let predicates = new dataSharePredicates.DataSharePredicates();
predicates.prefixKey("batch_test_string_key");
kvStore.getResultSet(predicates).then((result) => {
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
});
kvStore.closeResultSet(resultSet).then((err) => {
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
}).catch((err) => {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
});
......@@ -6256,6 +6215,10 @@ try {
getResultSet(deviceId: string, predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallback&lt;KVStoreResultSet&gt;): void
获取与指定Predicate对象匹配的KVStoreResultSet对象,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统接口:** 此接口为系统接口。
......@@ -6283,7 +6246,6 @@ getResultSet(deviceId: string, predicates: dataSharePredicates.DataSharePredicat
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let kvStore;
try {
let resultSet;
let predicates = new dataSharePredicates.DataSharePredicates();
......@@ -6293,14 +6255,14 @@ try {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
kvStore.closeResultSet(resultSet, function (err, data) {
if (err != undefined) {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
})
});
} catch (e) {
......@@ -6313,6 +6275,10 @@ try {
getResultSet(deviceId: string, predicates: dataSharePredicates.DataSharePredicates): Promise&lt;KVStoreResultSet&gt;
获取与指定Predicate对象匹配的KVStoreResultSet对象,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统接口:** 此接口为系统接口。
......@@ -6344,19 +6310,19 @@ getResultSet(deviceId: string, predicates: dataSharePredicates.DataSharePredicat
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let kvStore;
try {
let resultSet;
let predicates = new dataSharePredicates.DataSharePredicates();
predicates.prefixKey("batch_test_string_key");
kvStore.getResultSet('localDeviceId', predicates).then((result) => {
console.log('Succeeded in getting result set');
console.info('Succeeded in getting result set');
resultSet = result;
}).catch((err) => {
console.error(`Fail to get resultset.code is ${err.code},message is ${err.message}`);
});
kvStore.closeResultSet(resultSet).then((err) => {
console.log('Succeeded in closing result set');
console.info('Succeeded in closing result set');
}).catch((err) => {
console.error(`Fail to close resultset.code is ${err.code},message is ${err.message}`);
});
......@@ -6392,7 +6358,6 @@ getResultSize(query: Query, callback: AsyncCallback&lt;number&gt;): void
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -6407,7 +6372,7 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries, async function (err, data) {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSize(query, async function (err, resultSize) {
......@@ -6415,7 +6380,7 @@ try {
console.error(`Fail to get result size.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting result set size');
console.info('Succeeded in getting result set size');
});
});
} catch (e) {
......@@ -6455,7 +6420,6 @@ getResultSize(query: Query): Promise&lt;number&gt;
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -6470,14 +6434,14 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSize(query).then((resultSize) => {
console.log('Succeeded in getting result set size');
console.info('Succeeded in getting result set size');
}).catch((err) => {
console.error(`Fail to get result size.code is ${err.code},message is ${err.message}`);
});
......@@ -6491,6 +6455,10 @@ try {
getResultSize(deviceId: string, query: Query, callback: AsyncCallback&lt;number&gt;): void;
获取与指定设备ID和Query对象匹配的结果数,使用callback异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -6514,7 +6482,6 @@ getResultSize(deviceId: string, query: Query, callback: AsyncCallback&lt;number&
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -6533,7 +6500,7 @@ try {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
const query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSize('localDeviceId', query, async function (err, resultSize) {
......@@ -6541,7 +6508,7 @@ try {
console.error(`Fail to get resultSize.code is ${err.code},message is ${err.message}`);
return;
}
console.log('Succeeded in getting resultSize');
console.info('Succeeded in getting resultSize');
;
});
});
......@@ -6555,6 +6522,10 @@ try {
getResultSize(deviceId: string, query: Query): Promise&lt;number&gt;
获取与指定设备ID和Query对象匹配的结果数,使用Promise异步回调。
> **说明:**
>
> 其中deviceId通过调用[deviceManager.getTrustedDeviceListSync](js-apis-device-manager.md#gettrusteddevicelistsync)方法得到。deviceManager模块的接口均为系统接口,仅系统应用可用。
> deviceId具体获取方式请参考[sync接口示例](#sync)。
**系统能力:** SystemCapability.DistributedDataManager.KVStore.DistributedKVStore
......@@ -6583,7 +6554,6 @@ getResultSize(deviceId: string, query: Query): Promise&lt;number&gt;
**示例:**
```js
let kvStore;
try {
let entries = [];
for (var i = 0; i < 10; i++) {
......@@ -6598,14 +6568,14 @@ try {
entries.push(entry);
}
kvStore.putBatch(entries).then(async (err) => {
console.log('Succeeded in putting batch');
console.info('Succeeded in putting batch');
}).catch((err) => {
console.error(`Fail to put batch.code is ${err.code},message is ${err.message}`);
});
var query = new distributedKVStore.Query();
query.prefixKey("batch_test");
kvStore.getResultSize('localDeviceId', query).then((resultSize) => {
console.log('Succeeded in getting resultSize');
console.info('Succeeded in getting resultSize');
;
}).catch((err) => {
console.error(`Fail to get resultSize.code is ${err.code},message is ${err.message}`);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册