diff --git a/zh-cn/application-dev/reference/apis-arkdata/js-apis-distributedKVStore.md b/zh-cn/application-dev/reference/apis-arkdata/js-apis-distributedKVStore.md index 029e825b71e1ce0cfaefb4d2a410795b042cfae0..d2e76bc66f0fe345233392658d7cff25d125803f 100644 --- a/zh-cn/application-dev/reference/apis-arkdata/js-apis-distributedKVStore.md +++ b/zh-cn/application-dev/reference/apis-arkdata/js-apis-distributedKVStore.md @@ -2767,127 +2767,6 @@ try { } ``` -### putBatch - -putBatch(value: Array, callback: AsyncCallback<void>): void - -批量插入ValuesBucket到SingleKVStore数据库中,使用callback异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | ------------------------ | ---- | ------------------------ | -| entries | [ValuesBucket](js-apis-data-valuesBucket.md)[] | 是 | 表示要批量插入的ValuesBucket数组。 | -| callback | AsyncCallback<void> | 是 | 回调函数。数据批量插入成功,err为undefined,否则为错误对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | ---------------------------------------- | -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types.| -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -以下错误码的详细介绍请参见[关系型数据库错误码](errorcode-data-rdb.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------------- | -| 14800047 | The WAL file size exceeds the default limit. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import { ValuesBucket } from '@ohos.data.ValuesBucket'; - -try { - let values = []; - let arr1 = new Uint8Array([4, 5, 6, 7]); - let arr2 = new Uint8Array([4, 5, 6, 7, 8]); - let vb1 = {key: "name_1", value: arr1}; - let vb2 = {key: "name_2", value: arr2}; - values.push(vb1); - values.push(vb2); - kvStore.putBatch(values, function (err: BusinessError) { - if (err == undefined) { - console.error('putBatch success'); - } else { - console.error('putBatch fail'); - } - }); - } catch (e) { - let error = e as BusinessError; - console.error(`An unexpected error occurred`); - } -``` - -### putBatch - -putBatch(value: Array): Promise<void> - -批量插入ValuesBucket到SingleKVStore数据库中,使用Promise异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| ------- | ----------------- | ---- | ------------------------ | -| value | [ValuesBucket](js-apis-data-valuesBucket.md)[] | 是 | 表示要批量插入的ValuesBucket数组。| - -**返回值:** - -| 类型 | 说明 | -| ------------------- | ------------------------- | -| Promise<void> | 无返回结果的Promise对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | ---------------------------------------- | -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types.| -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -以下错误码的详细介绍请参见[关系型数据库错误码](errorcode-data-rdb.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------------- | -| 14800047 | The WAL file size exceeds the default limit. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import { ValuesBucket } from '@ohos.data.ValuesBucket'; - -try { - let values = []; - let arr1 = new Uint8Array([4, 5, 6, 7]); - let arr2 = new Uint8Array([4, 5, 6, 7, 8]); - let vb1 = {key: "name_1", value: arr1}; - let vb2 = {key: "name_2", value: arr2}; - values.push(vb1); - values.push(vb2); - await kvStore.putBatch(values).then(async () => { - console.error('putBatch success'); - }).catch((err: BusinessError) => { - console.error('putBatch fail'); - }); - } catch (e) { - let error = e as BusinessError; - console.error(`An unexpected error occurred`); -} -``` - ### delete delete(key: string, callback: AsyncCallback<void>): void @@ -3010,112 +2889,6 @@ try { console.error(`An unexpected error occurred.code is ${error.code},message is ${error.message}`); } ``` -### delete - -delete(predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallback<void>): void - -从数据库中按指定查询条件删除数据,使用callback异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | ------------------------- | ---- | ------------------------------------------------------------ | -| predicates | dataSharePredicates.DataSharePredicates; | 是 | 要删除数据的查询条件(js-apis-data-dataSharePredicates.md)。 | -| callback | AsyncCallback<void> | 是 | 回调函数。删除指定的数据成功,err为undefined,否则为错误对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------- | -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types. | -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -以下错误码的详细介绍请参见[关系型数据库错误码](errorcode-data-rdb.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------------- | -| 14800047 | The WAL file size exceeds the default limit. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import dataShare from './@ohos.data.dataSharePredicates'; - -try { - let predicates = new dataShare.DataSharePredicates(); - let arr = ["name"]; - predicates.inKeys(arr); - kvStore.delete(predicates, function (err: BusinessError) { - if (err == undefined) { - console.error('delete success'); - } else { - console.error('delete fail'); - } - }); -} catch (e) { - let error = e as BusinessError; - console.error(`An unexpected error occurred`); -} -``` - -### delete - -delete(predicates: dataSharePredicates.DataSharePredicates): Promise<void> - -从数据库中按指定查询条件删除数据,使用Promise异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | ------------------------- | ---- | ------------------------------------------------------------ | -| predicates | dataSharePredicates.DataSharePredicates; | 是 | 要删除数据的[predicates](js-apis-data-dataSharePredicates.md)。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------- | -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types. | -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -以下错误码的详细介绍请参见[关系型数据库错误码](errorcode-data-rdb.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------------- | -| 14800047 | The WAL file size exceeds the default limit. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import dataShare from './@ohos.data.dataSharePredicates'; - -try { - let predicates = new dataShare.DataSharePredicates(); - let arr = ["name"]; - predicates.inKeys(arr); - await kvStore.delete(predicates).then((data) => { - console.error('delete success'); - }).catch((err: BusinessError) => { - console.error('delete fail'); - }); -} catch (e) { - let error = e as BusinessError; - console.error(`An unexpected error occurred`); -} -``` ### deleteBatch @@ -4068,128 +3841,6 @@ try { console.error(`An unexpected error occurred.code is ${error.code},message is ${error.code}`); } ``` -### getResultSet - -getResultSet(predicates: dataSharePredicates.DataSharePredicates, AsyncCallback<KVStoreResultSet>): void; - -获取与指定谓词对象匹配的KVStoreResultSet对象,使用Callback异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| ------ | -------------- | ---- | -------------- | -| predicates | [dataSharePredicates.DataSharePredicates](js-apis-data-dataSharePredicates.md) | 是 | 表示谓词对象。 | -| callback | AsyncCallback<[KVStoreResultSet](#kvstoreresultset)> | 是 | 回调函数,获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**返回值:** - -| 类型 | 说明 | -| ---------------------------------------------------- | ------------------------------------------------------------ | -| Promise<[KVStoreResultSet](#kvstoreresultset)> | Promise对象。获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------- | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types.| -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 15100001 | Over max limits. | -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import dataSharePredicates from './@ohos.data.dataSharePredicates'; - -try { - let predicates = new dataShare.DataSharePredicates(); - let arr = ["name"]; - predicates.inKeys(arr); - kvStore.getResultSet(predicates, function (err, result) { - if (err == undefined) { - console.error('getResultSet success'); - } else { - console.error('getResultSet fail'); - } - }); -} catch (e) { - console.info('catch fail'); -} -``` - -### getResultSet - -getResultSet(predicates: dataSharePredicates.DataSharePredicates): Promise<KVStoreResultSet> - -获取与指定Query对象匹配的KVStoreResultSet对象,使用Promise异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| ------ | -------------- | ---- | -------------- | -| predicates | [dataSharePredicates.DataSharePredicates](js-apis-data-dataSharePredicates.md) | 是 | 表示谓词对象。 | - -**返回值:** - -| 类型 | 说明 | -| ---------------------------------------------------- | ------------------------------------------------------------ | -| Promise<[KVStoreResultSet](#kvstoreresultset)> | Promise对象。获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------- | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types.| -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 15100001 | Over max limits. | -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import dataSharePredicates from './@ohos.data.dataSharePredicates'; - -try { - let entries: distributedKVStore.Entry[] = []; - let resultSet; - for (let i = 0; i < 10; i++) { - let key = 'name_'; - let value = 'Bob_' - let entry: distributedKVStore.Entry = { - key: key + i, - value: { - type: factory.ValueType.STRING, - value: value + i - } - } - entries.push(entry); - } - await kvStore.putBatch(entries).then(async () => { - }).catch((err: BusinessError) => { - }); - let predicates = new dataShare.DataSharePredicates(); - predicates.prefixKey("name_"); - await kvStore.getResultSet(predicates).then((result: distributedKVStore.KVStoreResultSet) => { - console.error('getResultSet success'); - }).catch((err: BusinessError) => { - console.error(`Failed to get resultset.code is ${err.code},message is ${err.message}`); - }); -} catch (e: BusinessError) { - console.info('catch fail'); -} -``` ### closeResultSet @@ -7136,256 +6787,6 @@ try { } ``` -### getResultSet - -getResultSet(predicates: dataSharePredicates.DataSharePredicates, AsyncCallback<KVStoreResultSet>): void; - -获取与指定谓词对象匹配的KVStoreResultSet对象,使用Callback异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| ------ | -------------- | ---- | -------------- | -| predicates | [dataSharePredicates.DataSharePredicates](js-apis-data-dataSharePredicates.md) | 是 | 表示谓词对象。 | -| callback | AsyncCallback<[KVStoreResultSet](#kvstoreresultset)> | 是 | 回调函数,获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**返回值:** - -| 类型 | 说明 | -| ---------------------------------------------------- | ------------------------------------------------------------ | -| Promise<[KVStoreResultSet](#kvstoreresultset)> | Promise对象。获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------- | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types.| -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 15100001 | Over max limits. | -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import dataShare from './@ohos.data.dataSharePredicates'; - -try { - let predicates = new dataShare.DataSharePredicates(); - let arr = ["name"]; - predicates.inKeys(arr); - kvStore.getResultSet(predicates, function (err: BusinessError, result: distributedKVStore.KVStoreResultSet) { - if (err == undefined) { - console.error('getResultSet success'); - } else { - console.error('getResultSet fail'); - } - }); -} catch (e: BusinessError) { - console.info('catch fail'); -} -``` - -### getResultSet - -getResultSet(predicates: dataSharePredicates.DataSharePredicates): Promise<KVStoreResultSet> - -获取与指定Query对象匹配的KVStoreResultSet对象,使用Promise异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| ------ | -------------- | ---- | -------------- | -| predicates | [dataSharePredicates.DataSharePredicates](js-apis-data-dataSharePredicates.md) | 是 | 表示谓词对象。 | - -**返回值:** - -| 类型 | 说明 | -| ---------------------------------------------------- | ------------------------------------------------------------ | -| Promise<[KVStoreResultSet](#kvstoreresultset)> | Promise对象。获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------- | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types.| -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 15100001 | Over max limits. | -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import dataShare from './@ohos.data.dataSharePredicates'; - -try { - let entries: distributedKVStore.Entry[] = []; - let resultSet; - for (let i = 0; i < 10; i++) { - let key = 'name_'; - let value = 'Bob_' - let entry: distributedKVStore.Entry= { - key: key + i, - value: { - type: factory.ValueType.STRING, - value: value + i - } - } - entries.push(entry); - } - await kvStore.putBatch(entries).then(async () => { - }).catch((err: BusinessError) => { - console.info('catch fail'); - }); - let predicates = new dataShare.DataSharePredicates(); - predicates.prefixKey("name_"); - await kvStore.getResultSet(predicates).then((result: distributedKVStore.KVStoreResultSet) => { - console.error('getResultSet success'); - }).catch((err: BusinessError) => { - console.error('getResultSet fail'); - }); -} catch (e: BusinessError) { - console.info('catch fail'); -} -``` - -### getResultSet - -getResultSet(deviceId: string, predicates: dataSharePredicates.DataSharePredicates, AsyncCallback<KVStoreResultSet>): void; - -获取与指定设备和谓词对象匹配的KVStoreResultSet对象,使用Callback异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| ------ | -------------- | ---- | -------------- | -| deviceId | string | 是 | KVStoreResultSet对象所属的设备ID。 | -| predicates | [dataSharePredicates.DataSharePredicates](js-apis-data-dataSharePredicates.md) | 是 | 表示谓词对象。 | -| callback | AsyncCallback<[KVStoreResultSet](#kvstoreresultset)> | 是 | 回调函数,获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**返回值:** - -| 类型 | 说明 | -| ---------------------------------------------------- | ------------------------------------------------------------ | -| Promise<[KVStoreResultSet](#kvstoreresultset)> | Promise对象。获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------- | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types.| -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 15100001 | Over max limits. | -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import dataShare from './@ohos.data.dataSharePredicates'; - -try { - let predicates = new dataShare.DataSharePredicates(); - let arr = ["name"]; - predicates.inKeys(arr); - kvStore.getResultSet(predicates, function (err: BusinessError, result: distributedKVStore.KVStoreResultSet) { - if (err == undefined) { - console.error('getResultSet success'); - } else { - console.error('getResultSet fail'); - } - }); -} catch (e: BusinessError) { - console.info('catch fail'); -} -``` - -### getResultSet - -getResultSet(deviceId: string, predicates: dataSharePredicates.DataSharePredicates): Promise<KVStoreResultSet> - -获取与指定设备和谓词对象匹配的KVStoreResultSet对象,使用Promise异步回调。 - -**系统能力:** SystemCapability.DistributedDataManager.KVStore.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| ------ | -------------- | ---- | -------------- | -| deviceId | string | 是 | KVStoreResultSet对象所属的设备ID。 | -| predicates | [dataSharePredicates.DataSharePredicates](js-apis-data-dataSharePredicates.md) | 是 | 表示谓词对象。 | - -**返回值:** - -| 类型 | 说明 | -| ---------------------------------------------------- | ------------------------------------------------------------ | -| Promise<[KVStoreResultSet](#kvstoreresultset)> | Promise对象。获取与指定谓词对象匹配的KVStoreResultSet对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[分布式键值数据库错误码](errorcode-distributedKVStore.md)和[通用错误码](../errorcode-universal.md)。 - -| **错误码ID** | **错误信息** | -| ------------ | -------------------------------------- | -| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types.| -| 202 | Permission verification failed, application which is not a system application uses system API. | -| 15100001 | Over max limits. | -| 15100003 | Database corrupted. | -| 15100005 | Database or result set already closed. | - -**示例:** - -```ts -import { BusinessError } from '@ohos.base'; -import dataShare from './@ohos.data.dataSharePredicates'; - -try { - let entries: distributedKVStore.Entry[] = []; - for (let i = 0; i < 10; i++) { - let key = 'name_'; - let value = 'Bob_' - let entry = { - key: key + i, - value: { - type: factory.ValueType.STRING, - value: value + i - } - } - entries.push(entry); - } - await kvStore.putBatch(entries).then(async () => { - console.error('putBatch success'); - }).catch((err: BusinessError) => { - console.error('putBatch failed'); - }); - let predicates = new dataShare.DataSharePredicates(); - predicates.prefixKey("name_"); - await kvStore.getResultSet('localDeviceId', predicates).then((result) => { - console.error('getResultSet success'); - }).catch((err: BusinessError) => { - console.error('getResultSet fail'); - }); -} catch (e) { - console.info('An unexpected error occurred'); -} -``` - ### getResultSize getResultSize(query: Query, callback: AsyncCallback<number>): void