From 468bd3b445bc6c7f00322242c92839c90246a790 Mon Sep 17 00:00:00 2001 From: songruirui Date: Thu, 2 Jun 2022 17:01:51 +0800 Subject: [PATCH] =?UTF-8?q?datashareapi=E6=96=87=E6=A1=A3=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: songruirui --- ...s-application-DataShareExtensionAbility.md | 449 ++++++----- .../apis/js-apis-data-DataSharePredicates.md | 463 ++++++------ .../apis/js-apis-data-DataShareResultSet.md | 276 ++++--- .../apis/js-apis-data-ValuesBucket.md | 32 +- .../reference/apis/js-apis-data-dataShare.md | 708 ++++++++++-------- 5 files changed, 1067 insertions(+), 861 deletions(-) diff --git a/zh-cn/application-dev/reference/apis/js-apis-application-DataShareExtensionAbility.md b/zh-cn/application-dev/reference/apis/js-apis-application-DataShareExtensionAbility.md index 8e8e19235c..a1fa6c99dc 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-application-DataShareExtensionAbility.md +++ b/zh-cn/application-dev/reference/apis/js-apis-application-DataShareExtensionAbility.md @@ -1,49 +1,64 @@ # DataShareExtensionAbility -**DataShareExtensionAbility** 作为一种扩展能力提供基础生命周期管理,支持基于场景(比如卡片、Workscheduler)的Ability的生命周期管理,提供相应的回调接口(启动、接口调用、连接、断开连接、销毁等) +**DataShareExtensionAbility** 是基于元能力提供的ExtensionAbility框架,提供支持数据共享业务的能力。 >**说明:** ->本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 +> +>本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。仅限系统应用。 ## 导入模块 -```js -import Extension from '@ohos.application.DataShareExtensionAbility' +```ts +import DataShareExtensionAbility from '@ohos.application.DataShareExtensionAbility' ``` ## onCreate onCreate?(want: Want, callback: AsyncCallback): void; -DataShareExtAbility生命周期回调,在创建时回调,执行初始化业务逻辑操作 +DataShareExtAbility生命周期回调,在创建时回调,执行初始化业务逻辑操作。 -**系统能力**:以下各项对应的系统能力均为SystemCapability.DistributedDataManager.DataShare.Core +此接口为可选的。可以被重写,也可以不进行重写。 + +此接口为系统接口,三方应用不支持调用。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 **参数:** | 参数名 | 参数类型 | 必填 | 说明 | | ----- | ------ | ------ | ------ | -| want | Want | 是 | Want类型信息,包括ability名称、bundle名称等。 | - -**返回值**: 无 +| want | [Want](js-apis-application-Want.md#want) | 是 | Want类型信息,包括ability名称、bundle名称等。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js +```ts import rdb from '@ohos.data.rdb'; -onCreate(want) { +let DB_NAME = "DB00.db"; +let TBL_NAME = "TBL00"; +let DDL_TBL_CREATE = "CREATE TABLE IF NOT EXISTS " ++ TBL_NAME ++ " (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)"; + +// All of the input parameters are passed from the native side +onCreate(want, callback) { + // Specific functions need to be implemented by the user console.log('DataShareExtAbility onCreate, want:' + want.abilityName); - console.log('this.context:' + this.context); - rdb.getRdbStore(this.context, {name: DB_NAME}, 1, function (err, data) { - console.log('DataShareExtAbility onCreate, getRdbStore done err:' + JSON.stringify(err)); - console.log('DataShareExtAbility onCreate, getRdbStore done data:' + JSON.stringify(data)); - rdbStore = data; + console.log('DataShareExtAbility onCreate, this.context:' + this.context); + rdb.getRdbStore(this.context, { + name: DB_NAME + }, 1, function (err, data) { + console.log('getRdbStore fail, error message : ' + err); + console.log('getRdbStore done, data : ' + data); + let rdbStore = data; rdbStore.executeSql(DDL_TBL_CREATE, [], function (err) { - console.log('DataShareExtAbility onCreate, executeSql done err:' + JSON.stringify(err)); + console.log('executeSql fail, error message : ' + err); }); }); + callback(); } ``` @@ -51,327 +66,375 @@ onCreate(want) { insert?(uri: string, valueBucket: ValuesBucket, callback: AsyncCallback): void; -insert生命周期回调,在数据库插入时回调 +insert生命周期回调,在数据库插入时回调。 + +此接口为可选的。可以被重写,也可以不进行重写。 + +此接口为系统接口,三方应用不支持调用。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 **参数:** | 参数名 | 参数类型 | 必填 | 说明 | | ----- | ------ | ------ | ------ | -| uri |string | 是 | 指示要插入的数据的路径 | -| valuesBucket |ValuesBucket | 是 | 指示要插入的数据记录 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| number | 返回插入数据记录的索引 | +| uri |string | 是 | 指示要插入的数据的路径。 | +| valueBucket |[ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket) | 是 | 指示要插入的数据记录。 | +| callback |AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js +```ts import rdb from '@ohos.data.rdb'; let TBL_NAME = "TBL00"; +// Refer to the onCreate for the method of obtaining rdbStore +let rdbStore; +// All of the input parameters are passed from the native side insert(uri, value, callback) { - if (value == null) { - console.info('invalid valueBuckets'); - return; - } - await rdbStore.insert(TBL_NAME, value, function (err, ret) { - console.info('callback ret:' + ret); - if (callback != undefined) { - callback(err, ret); - } + // Specific functions need to be implemented by the user + if (value == null) { + console.info('invalid valueBuckets'); + return; + } + rdbStore.insert(TBL_NAME, value, function (err, ret) { + console.info('callback ret:' + ret); + if (callback != undefined) { + callback(err, ret); + } }); } ``` -### update +## update -update?(uri: string, predicates: DataSharePredicates, valueBucket: ValuesBucket,callback: AsyncCallback): void; +update?(uri: string, predicates: DataSharePredicates, valueBucket: ValuesBucket, callback: AsyncCallback): void; -update生命周期回调,在数据库更新时回调 +update生命周期回调,在数据库更新时回调。 -| 参数名 | 参数类型 | 必填 | 说明 | -| ----- | ------ | ------ | ------ | -| uri | string | 是 | 指示要更新的数据的路径 | -| predicates | DataSharePredicates | 是 | 指示要更新的数据 | -| valueBucket | ValuesBucket | 是 | 指示筛选条件 | +此接口为可选的。可以被重写,也可以不进行重写。 + +此接口为系统接口,三方应用不支持调用。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 -**返回值:** +**参数:** -| 类型 | 说明 | -| ------ | -------------------- | -| number | 返回更新的数据记录数 | +| 参数名 | 参数类型 | 必填 | 说明 | +| ----- | ------ | ------ | ------ | +| uri | string | 是 | 指示要更新的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。 | +| valueBucket | [ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket) | 是 | 指示要更新的数据。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js +```ts import rdb from '@ohos.data.rdb'; let TBL_NAME = "TBL00"; +// Refer to the onCreate for the method of obtaining rdbStore +let rdbStore; +// All of the input parameters are passed from the native side update(uri, predicates, value, callback) { - if (predicates == null || predicates == undefined) { - return; - } - rdbStore.update(TBL_NAME,value, predicates, function (err, ret) { - if (callback != undefined) { - callback(err, ret); - } - }); + // Specific functions need to be implemented by the user + if (predicates == null || predicates == undefined) { + return; + } + rdbStore.update(TBL_NAME, value, predicates, function (err, ret) { + if (callback != undefined) { + callback(err, ret); + } + }); } ``` -### query +## query -query?(uri: string, predicates: DataSharePredicates, columns: Array,callback: AsyncCallback): void; +query?(uri: string, predicates: DataSharePredicates, columns: Array, callback: AsyncCallback): void; -query生命周期回调,在数据库查询时回调 +query生命周期回调,在数据库查询时回调。 -| 名称 | 参数类型 | 必填 | 说明 | -| ----- | ------ | ------ | ------ | -| uri | string | 是 | 指示要查询的数据的路径 | -| predicates | DataSharePredicates | 是 | 指示筛选条件 | -| columns | Array | 是 | 指示要查询的列。如果此参数为空,则查询所有列 | +此接口为可选的。可以被重写,也可以不进行重写。 + +此接口为系统接口,三方应用不支持调用。 -**返回值:** +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 -| 类型 | 说明 | -| --------- | -------------- | -| ResultSet | 返回查询结果集 | +**参数:** + +| 名称 | 参数类型 | 必填 | 说明 | +| ----- | ------ | ------ | ------ | +| uri | string | 是 | 指示要查询的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。 | +| columns | Array | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js +```ts import rdb from '@ohos.data.rdb'; let TBL_NAME = "TBL00"; +// Refer to the onCreate for the method of obtaining rdbStore +let rdbStore; -query(uri, predicates, columns, callback) { - if (predicates == null || predicates == undefined) { - return; - } - rdbStore.query(TBL_NAME, predicates, columns, function (err, resultSet) { - if (resultSet != undefined) { - console.info('resultSet.rowCount: ' + resultSet.rowCount); - } - if (callback != undefined) { - callback(err, resultSet); - } - }); +// All of the input parameters are passed from the native side +query(uri, predicates, columns, callback) { + // Specific functions need to be implemented by the user + if (predicates == null || predicates == undefined) { + return; + } + rdbStore.query(TBL_NAME, predicates, columns, function (err, resultSet) { + if (resultSet != undefined) { + console.info('resultSet.rowCount: ' + resultSet.rowCount); + } + if (callback != undefined) { + callback(err, resultSet); + } + }); } ``` -### delete +## delete delete?(uri: string, predicates: DataSharePredicates, callback: AsyncCallback): void; -delete生命周期回调,在删除数据库记录时回调 +delete生命周期回调,在删除数据库记录时回调。 + +此接口为可选的。可以被重写,也可以不进行重写。 + +此接口为系统接口,三方应用不支持调用。 -| 名称 | 参数类型 | 必填 | 说明 | -| ---------- | ------------------- | ---- | ---------------------- | -| uri | string | 是 | 指示要查询的数据的路径 | -| predicates | DataSharePredicates | 是 | 指示筛选条件 | +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 -**返回值:** +**参数:** -| 类型 | 说明 | -| ------ | ---------------------- | -| number | 返回已删除的数据记录数 | +| 名称 | 参数类型 | 必填 | 说明 | +| ---------- | ------------------------------------------------------------ | ---- | ------------------------ | +| uri | string | 是 | 指示要查询的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js +```ts import rdb from '@ohos.data.rdb'; let TBL_NAME = "TBL00"; +// Refer to the onCreate for the method of obtaining rdbStore +let rdbStore; +// All of the input parameters are passed from the native side delete(uri, predicates, callback) { - if (predicates == null || predicates == undefined) { - return; - } - rdbStore.delete(TBL_NAME,predicates, function (err, ret) { - if (callback != undefined) { - callback(err, ret); - } - }); + // Specific functions need to be implemented by the user + if (predicates == null || predicates == undefined) { + return; + } + rdbStore.delete(TBL_NAME, predicates, function (err, ret) { + if (callback != undefined) { + callback(err, ret); + } + }); } ``` -### batchInsert +## batchInsert batchInsert?(uri: string, valueBuckets: Array, callback: AsyncCallback): void; -insert生命周期回调,在数据库插入时回调 +batchinsert生命周期回调,在数据库批量插入时回调。 + +此接口为可选的。可以被重写,也可以不进行重写。 -| 名称 | 参数类型 | 必填 | 说明 | -| ------------ | ------------------- | ---- | ---------------------- | -| uri | string | 是 | 指示要插入的数据的路径 | -| valueBuckets | Array | 是 | 指示要插入的数据记录 | +此接口为系统接口,三方应用不支持调用。 -**返回值:** +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 -| 类型 | 说明 | -| ------ | -------------------- | -| number | 返回插入的数据记录数 | +**参数:** + +| 名称 | 参数类型 | 必填 | 说明 | +| ------------ | ------------------------------------------------------------ | ---- | ------------------------ | +| uri | string | 是 | 指示要插入的数据的路径。 | +| valueBuckets | Array<[ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket)> | 是 | 指示要插入的数据记录。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js +```ts import rdb from '@ohos.data.rdb'; let TBL_NAME = "TBL00"; +// Refer to the onCreate for the method of obtaining rdbStore +let rdbStore; +// All of the input parameters are passed from the native side batchInsert(uri: string, valueBuckets, callback) { - if (valueBuckets == null || valueBuckets.length == undefined) { - console.info('invalid valueBuckets'); - return; - } - let resultNum = valueBuckets.length - valueBuckets.forEach(vb => { - rdbStore.insert(TBL_NAME, vb, function (err, ret) { - if (callback != undefined) { - callback(err, resultNum); - } - }); - }); + // Specific functions need to be implemented by the user + if (valueBuckets == null || valueBuckets.length == undefined) { + console.info('invalid valueBuckets'); + return; + } + let resultNum = valueBuckets.length + valueBuckets.forEach(vb => { + rdbStore.insert(TBL_NAME, vb, function (err, ret) { + if (callback != undefined) { + callback(err, resultNum); + } + }); + }); } ``` -### getType +## getType getType?(uri: string, callback: AsyncCallback): void; -getType生命周期回调函数,获取给定URI对应的MIME类型时回调 +getType生命周期回调函数,获取给定URI对应的MIME类型时回调。 + +此接口为可选的。可以被重写,也可以不进行重写。 + +此接口为系统接口,三方应用不支持调用。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 **参数:** | 参数名 | 参数类型 | 必填 | 说明 | | ----- | ------ | ------ | ------ | -| uri | string | 是 | 指示要操作的数据的路径 | - -**返回值:** - -| 类型 | 说明 | -| ------ | ----------------------------------- | -| string | 返回与uri指定的数据匹配的MIME类型。 | +| uri | string | 是 | 指示要操作的数据的路径。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js -getType(uri: string,callback) { - // Specific functions need to be implemented by the user - let ret = "image"; - callback(err,ret); +```ts +// All of the input parameters are passed from the native side +getType(uri: string, callback) { + // Specific functions need to be implemented by the user + let err; + let ret = "image"; + callback(err, ret); } ``` -### getFileTypes +## getFileTypes getFileTypes?(uri: string, mimeTypeFilter: string, callback: AsyncCallback>): void; -getFileTypes生命周期回调,获取支持文件的MIME类型时回调 +getFileTypes生命周期回调,获取支持文件的MIME类型时回调。 -**参数:** +此接口为可选的。可以被重写,也可以不进行重写。 + +此接口为系统接口,三方应用不支持调用。 -| 名称 | 类型 | 必填 | 描述 | -| -------------- | ------ | ---- | -------------------------- | -| uri | string | 是 | 指示要获取的文件的路径 | -| mimeTypeFilter | string | 是 | 指示要获取的文件的MIME类型 | +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 -**返回值:** +**参数:** -| 类型 | 说明 | -| -------------------------------------- | ------------------------ | -| Array | 返回匹配的MIME类型数组 | +| 名称 | 类型 | 必填 | 描述 | +| -------------- | ---------------------------- | ---- | ---------------------------- | +| uri | string | 是 | 指示要获取的文件的路径。 | +| mimeTypeFilter | string | 是 | 指示要获取的文件的MIME类型。 | +| callback | AsyncCallback> | 是 | 表示被指定的回调方法。 | **示例:** -```js +```ts +// All of the input parameters are passed from the native side getFileTypes(uri: string, mimeTypeFilter: string,callback) { - // Specific functions need to be implemented by the user - let ret = new Array("type01", "type02", "type03"); - callback(err,ret); + // Specific functions need to be implemented by the user + let err; + let ret = new Array("type01", "type02", "type03"); + callback(err, ret); } ``` -### normalizeUri +## normalizeUri normalizeUri?(uri: string, callback: AsyncCallback): void; -normalizeUri生命周期回调,给定uri转换为规范化uri时回调 +normalizeUri生命周期回调,给定uri转换为规范化uri时回调。 -**参数:** +此接口为可选的。可以被重写,也可以不进行重写。 -| 名称 | 类型 | 必填 | 描述 | -| ---- | ------ | ---- | --------------------- | -| uri | string | 是 | 指示要规范化的uri对象 | +此接口为系统接口,三方应用不支持调用。 -**返回值:** +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 + +**参数:** -| 类型 | 说明 | -| ------ | ---------------------------------------------------- | -| string | 如果数据功能支持uri规范化或null,则返回规范化uri对象 | +| 名称 | 类型 | 必填 | 描述 | +| -------- | --------------------- | ---- | ----------------------- | +| uri | string | 是 | 指示要规范化的uri对象。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js -normalizeUri(uri: string,callback) { - // Specific functions need to be implemented by the user - let ret = "normalize+" + uri; - callback(err,ret); +```ts +// All of the input parameters are passed from the native side +normalizeUri(uri: string, callback) { + // Specific functions need to be implemented by the user + let err; + let ret = "normalize+" + uri; + callback(err, ret); } ``` -### denormalizeUri +## denormalizeUri denormalizeUri?(uri: string, callback: AsyncCallback): void; -将由denormalizeUri生命周期回调,给定规范化uri转换为非规范化uri时回调 +将由denormalizeUri生命周期回调,给定规范化uri转换为非规范化uri时回调。 -**参数:** +此接口为可选的。可以被重写,也可以不进行重写。 + +此接口为系统接口,三方应用不支持调用。 -| 名称 | 类型 | 必填 | 描述 | -| ---- | ------ | ---- | --------------------- | -| uri | string | 是 | 指示要规范化的uri对象 | +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 -**返回值:** +**参数:** -| 类型 | 说明 | -| ------ | --------------------------------------- | -| string | 如果反规范化成功,则返回反规范化uri对象 | +| 名称 | 类型 | 必填 | 描述 | +| -------- | --------------------- | ---- | ----------------------- | +| uri | string | 是 | 指示要规范化的uri对象。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js -denormalizeUri(uri: string,callback) { +```ts +// All of the input parameters are passed from the native side +denormalizeUri(uri: string, callback) { // Specific functions need to be implemented by the user + let err; let ret = "denormalize+" + uri; - callback(err,ret); + callback(err, ret); } ``` -### openFile +## openFile openFile?(uri: string, mode: string, callback: AsyncCallback): void; -将由openFile生命周期回调,在打开文件时回调 +将由openFile生命周期回调,在打开文件时回调。 -**参数:** +此接口为可选的。可以被重写,也可以不进行重写。 -| 名称 | 类型 | 必填 | 描述 | -| ---- | ------ | ---- | --------------------- | -| uri | string | 是 | 指示要规范化的uri对象 | -| mode | string | 是 | 指示文件打开模式‘rwt’ | +此接口为系统接口,三方应用不支持调用。 -**返回值:** +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Provider。 + +**参数:** -| 类型 | 说明 | -| ------ | -------------- | -| number | 返回文件描述符 | +| 名称 | 类型 | 必填 | 描述 | +| -------- | --------------------- | ---- | ------------------------------------------ | +| uri | string | 是 | 指示要规范化的uri对象。 | +| mode | string | 是 | 指示文件打开模式,包括只读模式,读写模式。 | +| callback | AsyncCallback | 是 | 表示被指定的回调方法。 | **示例:** -```js +```ts +// All of the input parameters are passed from the native side openFile(uri: string, mode, callback) { // Specific functions need to be implemented by the user + let err; let fd = 0; callback(err,fd); } diff --git a/zh-cn/application-dev/reference/apis/js-apis-data-DataSharePredicates.md b/zh-cn/application-dev/reference/apis/js-apis-data-DataSharePredicates.md index 3a3045b448..1313a10e69 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-data-DataSharePredicates.md +++ b/zh-cn/application-dev/reference/apis/js-apis-data-DataSharePredicates.md @@ -1,70 +1,75 @@ -# DataShare谓词 +# DataSharePredicates -**DataShare谓词(DataSharePredicates)** +**谓词(DataSharePredicates)** 是用户通过DataShare查询数据库中的数据所使用的限制条件,经常被应用在更新数据(Update)和查询数据(Query)中。 >**说明:** +> >本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 ## 导入模块 -```js -import DataSharePredicates from './@ohos.data.DataSharePredicates'; +```ts +import DataSharePredicates from '@ohos.data.DataSharePredicates'; ``` ## equalTo -equalTo(*field*: *string*, *value*: ValueType): DataSharePredicates; +equalTo(field: string, value: ValueType): DataSharePredicates; -配置谓词以匹配数据类型为ValueType且值等于指定值的字段。 +该接口用于配置谓词以匹配数据类型为ValueType且值等于指定值的字段。 + +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------ | --------- | ---- | ---------------------- | -| field | string | 是 | 数据库表中的列名。 | -| value | ValueType | 是 | 指示要与谓词匹配的值。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------ | --------------------------------------------------- | ---- | ---------------------- | +| field | string | 是 | 数据库表中的列名。 | +| value | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示要与谓词匹配的值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.equalTo("NAME", "Rose") ``` ## notEqualTo -notEqualTo(*field*: *string*, *value*: ValueType): DataSharePredicates; +notEqualTo(field: string, value: ValueType): DataSharePredicates; + +该接口用于配置谓词以匹配数据类型为ValueType且值不等于指定值的字段。 -配置谓词以匹配数据类型为ValueType且值不等于指定值的字段。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------ | --------- | ---- | ---------------------- | -| field | string | 是 | 数据库表中的列名。 | -| value | ValueType | 是 | 指示要与谓词匹配的值。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------ | --------------------------------------------------- | ---- | ---------------------- | +| field | string | 是 | 数据库表中的列名。 | +| value | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示要与谓词匹配的值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.notEqualTo("NAME", "Rose") ``` @@ -73,19 +78,19 @@ dataSharePredicates.notEqualTo("NAME", "Rose") beginWrap(): DataSharePredicates; -向谓词添加左括号。 +该接口用于向谓词添加左括号。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **返回值:** -| 类型 | 说明 | -| ------------------- | ---------------------- | -| DataSharePredicates | 返回带有左括号的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | ---------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回带有左括号的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.equalTo("NAME", "lisi") .beginWrap() @@ -99,19 +104,19 @@ dataSharePredicates.equalTo("NAME", "lisi") endWrap(): DataSharePredicates; -向谓词添加右括号。 +该接口用于向谓词添加右括号。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **返回值:** -| 类型 | 说明 | -| ------------------- | ---------------------- | -| DataSharePredicates | 返回带有右括号的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | ---------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回带有右括号的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.equalTo("NAME", "lisi") .beginWrap() @@ -125,19 +130,21 @@ dataSharePredicates.equalTo("NAME", "lisi") or(): DataSharePredicates; -将或条件添加到谓词中。 +该接口用于将或条件添加到谓词中。 + +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **返回值:** -| 类型 | 说明 | -| ------------------- | ---------------------- | -| DataSharePredicates | 返回带有或条件的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | ---------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回带有或条件的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.equalTo("NAME", "lisi") .or() @@ -148,19 +155,21 @@ dataSharePredicates.equalTo("NAME", "lisi") and(): DataSharePredicates; -将和条件添加到谓词中。 +该接口用于将和条件添加到谓词中。 + +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **返回值:** -| 类型 | 说明 | -| ------------------- | ---------------------- | -| DataSharePredicates | 返回带有和条件的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | ---------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回带有和条件的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.equalTo("NAME", "lisi") .and() @@ -169,9 +178,9 @@ dataSharePredicates.equalTo("NAME", "lisi") ## contains -contains(*field*: *string*, *value*: *string*): DataSharePredicates; +contains(field: string, value: string): DataSharePredicates; -配置谓词以匹配数据类型为String且value包含指定值的字段。 +该接口用于配置谓词以匹配数据类型为String且value包含指定值的字段。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -184,22 +193,22 @@ contains(*field*: *string*, *value*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.contains("NAME", "os") ``` ## beginsWith -beginsWith(*field*: *string*, *value*: *string*): DataSharePredicates; +beginsWith(field: string, value: string): DataSharePredicates; -配置谓词以匹配数据类型为String且值以指定字符串开头的字段。 +该接口用于配置谓词以匹配数据类型为String且值以指定字符串开头的字段。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -212,22 +221,22 @@ beginsWith(*field*: *string*, *value*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.beginsWith("NAME", "os") ``` ## endsWith -endsWith(*field*: *string*, *value*: *string*): DataSharePredicates; +endsWith(field: string, value: string): DataSharePredicates; -配置谓词以匹配数据类型为String且值以指定字符串结尾的字段。 +该接口用于配置谓词以匹配数据类型为String且值以指定字符串结尾的字段。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -240,22 +249,24 @@ endsWith(*field*: *string*, *value*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.endsWith("NAME", "os") ``` ## isNull -isNull(*field*: *string*): DataSharePredicates; +isNull(field: string): DataSharePredicates; + +该接口用于配置谓词以匹配值为null的字段。 -配置谓词以匹配值为null的字段。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -267,22 +278,24 @@ isNull(*field*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.isNull("NAME") ``` ## isNotNull -isNotNull(*field*: *string*): DataSharePredicates; +isNotNull(field: string): DataSharePredicates; + +该接口用于配置谓词以匹配值不为null的指定字段。 -配置谓词以匹配值不为null的指定字段。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -294,22 +307,24 @@ isNotNull(*field*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.isNotNull("NAME") ``` ## like -like(*field*: *string*, *value*: *string*): DataSharePredicates; +like(field: string, value: string): DataSharePredicates; -配置谓词以匹配数据类型为string且值类似于指定字符串的字段。 +该接口用于配置谓词以匹配数据类型为string且值类似于指定字符串的字段。 + +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -322,22 +337,24 @@ like(*field*: *string*, *value*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.like("NAME", "%os%") ``` ## unlike -unlike(*field*: *string*, *value*: *string*): DataSharePredicates; +unlike(field: string, value: string): DataSharePredicates; + +该接口用于配置谓词以匹配数据类型为string且值不类似于指定字符串的字段。 -配置谓词以匹配数据类型为string且值不类似于指定字符串的字段。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -350,22 +367,22 @@ unlike(*field*: *string*, *value*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.unlike("NAME", "%os%") ``` ## glob -glob(*field*: *string*, *value*: *string*): DataSharePredicates; +glob(field: string, value: string): DataSharePredicates; -配置谓词匹配数据类型为string的指定字段。 +该接口用于配置谓词匹配数据类型为string的指定字段。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -378,80 +395,82 @@ glob(*field*: *string*, *value*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.glob("NAME", "?h*g") ``` ## between -between(*field*: *string*, *low*: ValueType, *high*: ValueType): DataSharePredicates; +between(field: string, low: ValueType, high: ValueType): DataSharePredicates; -将谓词配置为匹配数据类型为ValueType且value在指定范围内的指定字段。 +该接口用于将谓词配置为匹配数据类型为ValueType且value在指定范围内的指定字段。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------ | --------- | ---- | ------------------------ | -| field | string | 是 | 数据库表中的列名。 | -| low | ValueType | 是 | 指示与谓词匹配的最小值。 | -| high | ValueType | 是 | 指示与谓词匹配的最大值。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------ | --------------------------------------------------- | ---- | ------------------------ | +| field | string | 是 | 数据库表中的列名。 | +| low | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示与谓词匹配的最小值。 | +| high | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示与谓词匹配的最大值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.between("AGE", 10, 50) ``` ## notBetween -notBetween(*field*: *string*, *low*: ValueType, *high*: ValueType): DataSharePredicates; +notBetween(field: string, low: ValueType, high: ValueType): DataSharePredicates; -配置谓词以匹配数据类型为ValueType且value超出给定范围的指定字段。 +该接口用于配置谓词以匹配数据类型为ValueType且value超出给定范围的指定字段。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------ | --------- | ---- | ------------------------ | -| field | string | 是 | 数据库表中的列名。 | -| low | ValueType | 是 | 指示与谓词匹配的最小值。 | -| high | ValueType | 是 | 指示与谓词匹配的最大值。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------ | --------------------------------------------------- | ---- | ------------------------ | +| field | string | 是 | 数据库表中的列名。 | +| low | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示与谓词匹配的最小值。 | +| high | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示与谓词匹配的最大值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.notBetween("AGE", 10, 50) ``` ## greaterThan -greaterThan(*field*: *string*, *value*: ValueType): DataSharePredicates; +greaterThan(field: string, value: ValueType): DataSharePredicates; + +该接口用于配置谓词以匹配数据类型为ValueType且值大于指定值的字段。 -配置谓词以匹配数据类型为ValueType且值大于指定值的字段。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -460,54 +479,58 @@ greaterThan(*field*: *string*, *value*: ValueType): DataSharePredicates; | 参数名 | 类型 | 必填 | 说明 | | ------- | --------- | ---- | ---------------------- | | field | string | 是 | 数据库表中的列名。 | -| *value* | ValueType | 是 | 指示要与谓词匹配的值。 | +| value | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示要与谓词匹配的值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.greaterThan("AGE", 10) ``` ## lessThan -lessThan(*field*: *string*, *value*: ValueType): DataSharePredicates; +lessThan(field: string, value: ValueType): DataSharePredicates; -配置谓词以匹配数据类型为valueType且value小于指定值的字段。 +该接口用于配置谓词以匹配数据类型为valueType且value小于指定值的字段。 + +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------- | --------- | ---- | ---------------------- | -| field | string | 是 | 数据库表中的列名。 | -| *value* | ValueType | 是 | 指示要与谓词匹配的值。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------ | --------------------------------------------------- | ---- | ---------------------- | +| field | string | 是 | 数据库表中的列名。 | +| value | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示要与谓词匹配的值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.lessThan("AGE", 50) ``` ## greaterThanOrEqualTo -greaterThanOrEqualTo(*field*: *string*, *value*: ValueType): DataSharePredicates; +greaterThanOrEqualTo(field: string, value: ValueType): DataSharePredicates; + +该接口用于配置谓词以匹配数据类型为ValueType且value大于或等于指定值的字段。 -配置谓词以匹配数据类型为ValueType且value大于或等于指定值的字段。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -516,26 +539,28 @@ greaterThanOrEqualTo(*field*: *string*, *value*: ValueType): DataSharePredicates | 参数名 | 类型 | 必填 | 说明 | | ------- | --------- | ---- | ---------------------- | | field | string | 是 | 数据库表中的列名。 | -| *value* | ValueType | 是 | 指示要与谓词匹配的值。 | +| value | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示要与谓词匹配的值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.greaterThanOrEqualTo("AGE", 10) ``` ## lessThanOrEqualTo -lessThanOrEqualTo(*field*: *string*, *value*: ValueType): DataSharePredicates; +lessThanOrEqualTo(field: string, value: ValueType): DataSharePredicates; -配置谓词以匹配数据类型为ValueType且value小于或等于指定值的字段。 +该接口用于配置谓词以匹配数据类型为ValueType且value小于或等于指定值的字段。 + +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -544,26 +569,28 @@ lessThanOrEqualTo(*field*: *string*, *value*: ValueType): DataSharePredicates; | 参数名 | 类型 | 必填 | 说明 | | ------- | --------- | ---- | ---------------------- | | field | string | 是 | 数据库表中的列名。 | -| *value* | ValueType | 是 | 指示要与谓词匹配的值。 | +| value | [ValueType](js-apis-data-ValuesBucket.md#valuetype) | 是 | 指示要与谓词匹配的值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.lessThanOrEqualTo("AGE", 50) ``` ## orderByAsc -orderByAsc(*field*: *string*): DataSharePredicates; +orderByAsc(field: *string*): DataSharePredicates; + +该接口用于配置谓词以匹配其值按升序排序的列。 -配置谓词以匹配其值按升序排序的列。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -575,22 +602,24 @@ orderByAsc(*field*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.orderByAsc("AGE") ``` ## orderByDesc -orderByDesc(*field*: *string*): DataSharePredicates; +orderByDesc(field: *string*): DataSharePredicates; -配置谓词以匹配其值按降序排序的列。 +该接口用于配置谓词以匹配其值按降序排序的列。 + +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -602,13 +631,13 @@ orderByDesc(*field*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.orderByDesc("AGE") ``` @@ -617,28 +646,30 @@ dataSharePredicates.orderByDesc("AGE") distinct(): DataSharePredicates; -配置谓词以过滤重复记录并仅保留其中一个。 +该接口用于配置谓词以过滤重复记录并仅保留其中一个。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.equalTo("NAME", "Rose").distinct("NAME") ``` ## limit -limit(*total*: *number*, *offset*: *number*): DataSharePredicates; +limit(total: number, offset: number): DataSharePredicates; + +该接口用于配置谓词以指定结果数和起始位置。 -配置谓词以指定结果数和起始位置。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -647,53 +678,53 @@ limit(*total*: *number*, *offset*: *number*): DataSharePredicates; | 参数名 | 类型 | 必填 | 说明 | | -------- | ------ | ---- | -------------- | | total | number | 是 | 指定结果数。 | -| *offset* | number | 是 | 指示起始位置。 | +| offset | number | 是 | 指示起始位置。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.equalTo("NAME", "Rose").limit(10, 3) ``` ## groupBy -groupBy(*fields*: Array<*string*>): DataSharePredicates; +groupBy(fields: Array): DataSharePredicates; -配置谓词按指定列分组查询结果。 +该接口用于配置谓词按指定列分组查询结果。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------ | --------------- | ---- | -------------------- | -| fields | Array<*string*> | 是 | 指定分组依赖的列名。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------ | ------------- | ---- | -------------------- | +| fields | Array | 是 | 指定分组依赖的列名。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.groupBy(["AGE", "NAME"]) ``` ## indexedBy -indexedBy(*field*: *string*): DataSharePredicates; +indexedBy(field: string): DataSharePredicates; -配置谓词以指定索引列。 +该接口用于配置谓词以指定索引列。目前仅RDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -705,22 +736,24 @@ indexedBy(*field*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.indexedBy("SALARY_INDEX") ``` ## in -in(*field*: *string*, *value*: Array): DataSharePredicates; +in(field: string, value: Array): DataSharePredicates; + +该接口用于配置谓词以匹配数据类型为ValueType数组且值在给定范围内的指定字段。 -配置谓词以匹配数据类型为ValueType数组且值在给定范围内的指定字段。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -728,27 +761,29 @@ in(*field*: *string*, *value*: Array): DataSharePredicates; | 参数名 | 类型 | 必填 | 说明 | | ------- | ---------------- | ---- | --------------------------------------- | -| field | string | 是 | 数据库表中的列名。 | -| *value* | Array | 是 | 以ValueType型数组形式指定的要匹配的值。 | +| field | string | 是 | 数据库表中的列名。 | +| value | Array<[ValueType](js-apis-data-ValuesBucket.md#valuetype)> | 是 | 以ValueType型数组形式指定的要匹配的值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.in("AGE", [18, 20]) ``` ## notIn -notIn(*field*: *string*, *value*: Array): DataSharePredicates; +notIn(field: string, value: Array): DataSharePredicates; + +该接口用于配置谓词以匹配数据类型为ValueType数组且值不在给定范围内的指定字段。 -配置谓词以匹配数据类型为ValueType数组且值不在给定范围内的指定字段。 +目前仅RDB及KVDB(schema)支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -757,26 +792,26 @@ notIn(*field*: *string*, *value*: Array): DataSharePredicates; | 参数名 | 类型 | 必填 | 说明 | | ------- | ---------------- | ---- | --------------------------------------- | | field | string | 是 | 数据库表中的列名。 | -| *value* | Array | 是 | 以ValueType型数组形式指定的要匹配的值。 | +| value | Array<[ValueType](js-apis-data-ValuesBucket.md#valuetype)> | 是 | 以ValueType型数组形式指定的要匹配的值。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.notIn("NAME", ["Lisa", "Rose"]) ``` ## prefixKey -prefixKey(*prefix*: *string*): DataSharePredicates; +prefixKey(prefix: string): DataSharePredicates; -配置谓词以匹配键前缀的指定字段。 +该接口用于配置谓词以匹配键前缀的指定字段。目前仅KVDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -788,40 +823,40 @@ prefixKey(*prefix*: *string*): DataSharePredicates; **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.prefixKey("NAME") ``` ## inKeys -inKeys(*keys*: Array<*string*>): DataSharePredicates; +inKeys(keys: Array): DataSharePredicates; -配置谓词以匹配键在给定范围内的指定字段。 +该接口用于配置谓词以匹配键在给定范围内的指定字段。目前仅KVDB支持该谓词。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------ | --------------- | ---- | ------------------ | -| inKeys | Array<*string*> | 是 | 给定范围的键数组。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------ | ------------- | ---- | ------------------ | +| inKeys | Array | 是 | 给定范围的键数组。 | **返回值:** -| 类型 | 说明 | -| ------------------- | -------------------------- | -| DataSharePredicates | 返回与指定字段匹配的谓词。 | +| 类型 | 说明 | +| ------------------------------------------- | -------------------------- | +| [DataSharePredicates](#datasharepredicates) | 返回与指定字段匹配的谓词。 | **示例:** -```js +```ts let dataSharePredicates = new DataSharePredicates() dataSharePredicates.inKeys(["Lisa", "Rose"]) ``` diff --git a/zh-cn/application-dev/reference/apis/js-apis-data-DataShareResultSet.md b/zh-cn/application-dev/reference/apis/js-apis-data-DataShareResultSet.md index 9dca331968..15332a4570 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-data-DataShareResultSet.md +++ b/zh-cn/application-dev/reference/apis/js-apis-data-DataShareResultSet.md @@ -1,65 +1,85 @@ -# DataShare结果集 +# DataShareResultSet -**DataShare结果集(DataShareResultSet)** - -提供通过查询数据库生成的数据库结果集的访问方法。 +**结果集(DataShareResultSet)** 是为了提供通过查询数据库生成的结果集的访问方法,可以根据提供的行数,查询相应的值,也可以查询指定数据类型的值。 >**说明:** +> >本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 ## 导入模块 -```js -import DataShareResultSet from './@ohos.data.DataShareResultSet'; +```ts +import DataShareResultSet from '@ohos.data.DataShareResultSet'; ``` ## 使用说明 -需要通过dataShare.query()获取DataShareResultSet对象。 +需要通过[dataShare.query()](js-apis-data-dataShare.md#query)获取DataShareResultSet对象。 -```js +```ts import dataShare from '@ohos.data.dataShare'; -import DataSharePredicates from './@ohos.data.DataSharePredicates'; -query() +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +await dataShare.createDataShareHelper(this.context, uri, (err, data) => { + if (err != undefined) { + console.info("createDataShareHelper fail, error message : " + err); + } else { + console.info("createDataShareHelper end, data : " + data); + dataShareHelper = data; + } +}); + +let columns = ["*"]; +let da = new dataShare.DataSharePredicates(); +let resultSet; +da.equalTo("name", "ZhangSan"); +dataShareHelper.query(uri, da, columns).then((data) => { + console.log("query end, data : " + data); + resultSet = data; +}).catch((err) => { + console.log("query fail, error message : " + err); +}); ``` ## 属性 -| 名称 | 参数类型 | 必填 | 说明 | -| ----------- | --------------- | ---- | -------------------------- | -| columnNames | Array<*string*> | 是 | 获取结果集中所有列的名称。 | -| columnCount | *number* | 是 | 获取结果集中的列数。 | -| rowCount | *number* | 是 | 获取结果集中的行数。 | -| isClosed | *boolean* | 是 | 检查当前结果集是否关闭。 | +| 名称 | 参数类型 | 必填 | 说明 | +| ----------- | ------------- | ---- | ------------------------ | +| columnNames | Array | 是 | 结果集中所有列的名称。 | +| columnCount | number | 是 | 结果集中的列数。 | +| rowCount | number | 是 | 结果集中的行数。 | +| isClosed | boolean | 是 | 标志当前结果集是否关闭。 | ## goToFirstRow -goToFirstRow(): *boolean*; +goToFirstRow(): boolean; -转到结果集的第一行。 +该接口用于转到结果集的第一行。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **返回值:** -| 类型 | 说明 | -| :-------- | --------------------------------------------- | -| *boolean* | 如果成功移动结果集,则为true;否则返回false。 | +| 类型 | 说明 | +| :------ | --------------------------------------------- | +| boolean | 如果成功移动结果集,则为true;否则返回false。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let isGoTOFirstRow = resultSet.goToFirstRow(); console.info('resultSet.goToFirstRow: ' + isGoTOFirstRow); ``` ## goToLastRow -goToLastRow(): *boolean*; +goToLastRow(): boolean; -转到结果集的最后一行。 +该接口用于转到结果集的最后一行。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -67,32 +87,36 @@ goToLastRow(): *boolean*; | 类型 | 说明 | | -------- | -------- | -| *boolean* | 如果成功移动结果集,则为true;否则返回false。 | +| boolean | 如果成功移动结果集,则为true;否则返回false。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let isGoToLastRow = resultSet.goToLastRow(); console.info('resultSet.goToLastRow: ' + isGoToLastRow); ``` ## goToNextRow -goToNextRow(): *boolean*; +goToNextRow(): boolean; -转到结果集的下一行。 +该接口用于转到结果集的下一行。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **返回值:** -| 类型 | 说明 | -| --------- | --------------------------------------------- | -| *boolean* | 如果成功移动结果集,则为true;否则返回false。 | +| 类型 | 说明 | +| ------- | --------------------------------------------- | +| boolean | 如果成功移动结果集,则为true;否则返回false。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let isGoToNextRow = resultSet.goToNextRow(); console.info('resultSet.goToNextRow: ' + isGoToNextRow); ``` @@ -101,19 +125,21 @@ console.info('resultSet.goToNextRow: ' + isGoToNextRow); goToPreviousRow(): boolean; -转到结果集的上一行。 +该接口用于转到结果集的上一行。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **返回值:** -| 类型 | 说明 | -| --------- | --------------------------------------------- | -| *boolean* | 如果成功移动结果集,则为true;否则返回false。 | +| 类型 | 说明 | +| ------- | --------------------------------------------- | +| boolean | 如果成功移动结果集,则为true;否则返回false。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let isGoToPreviousRow = resultSet.goToPreviousRow(); console.info('resultSet.goToPreviousRow: ' + isGoToPreviousRow); ``` @@ -122,7 +148,7 @@ console.info('resultSet.goToPreviousRow: ' + isGoToPreviousRow); goTo(offset:number): boolean; -向前或向后转至结果集的指定行,相对于其当前位置偏移。 +该接口用于向前或向后转至结果集的指定行,相对于其当前位置偏移。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -130,17 +156,19 @@ goTo(offset:number): boolean; | **参数名** | **类型** | **必填** | 说明 | | ---------- | -------- | -------- | ---------------------------- | -| *offset* | number | 是 | 表示相对于当前位置的偏移量。 | +| offset | number | 是 | 表示相对于当前位置的偏移量。 | **返回值:** -| 类型 | 说明 | -| --------- | --------------------------------------------- | -| *boolean* | 如果成功移动结果集,则为true;否则返回false。 | +| 类型 | 说明 | +| ------- | --------------------------------------------- | +| boolean | 如果成功移动结果集,则为true;否则返回false。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let goToNum = 1; let isGoTo = resultSet.goTo(goToNum); console.info('resultSet.goTo: ' + isGoTo); @@ -150,7 +178,7 @@ console.info('resultSet.goTo: ' + isGoTo); goToRow(position: number): boolean; -转到结果集的指定行。 +该接口用于转到结果集的指定行。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 @@ -158,17 +186,19 @@ goToRow(position: number): boolean; | **参数名** | **类型** | **必填** | 说明 | | ---------- | -------- | -------- | ------------------------ | -| *position* | number | 是 | 表示要移动到的指定位置。 | +| position | number | 是 | 表示要移动到的指定位置。 | **返回值:** -| 类型 | 说明 | -| --------- | --------------------------------------------- | -| *boolean* | 如果成功移动结果集,则为true;否则返回false。 | +| 类型 | 说明 | +| ------- | --------------------------------------------- | +| boolean | 如果成功移动结果集,则为true;否则返回false。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let goToRowNum = 2 let isGoToRow = resultSet.goToRow(goToRowNum); console.info('resultSet.goToRow: ' + isGoToRow); @@ -176,27 +206,29 @@ console.info('resultSet.goToRow: ' + isGoToRow); ## getBlob -getBlob(*columnIndex*: *number*): Uint8Array; +getBlob(columnIndex: number): Uint8Array; -以字节数组的形式获取当前行中指定列的值。 +该接口用于以字节数组的形式获取当前行中指定列的值。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| **参数名** | **类型** | **必填** | 说明 | -| ------------- | -------- | -------- | ----------------------- | -| *columnIndex* | number | 是 | 指定的列索引,从0开始。 | +| **参数名** | **类型** | **必填** | 说明 | +| ----------- | -------- | -------- | ----------------------- | +| columnIndex | number | 是 | 指定的列索引,从0开始。 | **返回值:** -| 类型 | 说明 | -| ------------ | -------------------------------- | -| *Uint8Array* | 以字节数组的形式返回指定列的值。 | +| 类型 | 说明 | +| ---------- | -------------------------------- | +| Uint8Array | 以字节数组的形式返回指定列的值。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let columnIndex = 1 let goToFirstRow = resultSet.goToFirstRow(); let getBlob = resultSet.getBlob(columnIndex); @@ -205,27 +237,29 @@ console.info('resultSet.getBlob: ' + getBlob); ## getString -getString(*columnIndex*: *number*): *string*; +getString(columnIndex: number): *string*; -以字符串形式获取当前行中指定列的值。 +该接口用于以字符串形式获取当前行中指定列的值。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| **参数名** | **类型** | **必填** | 说明 | -| ------------- | -------- | -------- | ----------------------- | -| *columnIndex* | number | 是 | 指定的列索引,从0开始。 | +| **参数名** | **类型** | **必填** | 说明 | +| ----------- | -------- | -------- | ----------------------- | +| columnIndex | number | 是 | 指定的列索引,从0开始。 | **返回值:** -| 类型 | 说明 | -| -------- | ---------------------------- | -| *string* | 以字符串形式返回指定列的值。 | +| 类型 | 说明 | +| ------ | ---------------------------- | +| string | 以字符串形式返回指定列的值。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let columnIndex = 1 let goToFirstRow = resultSet.goToFirstRow(); let getString = resultSet.getString(columnIndex); @@ -234,27 +268,29 @@ console.info('resultSet.getString: ' + getString); ## getLong -getLong(*columnIndex*: *number*): *number*; +getLong(columnIndex: number): *number*; -以Long形式获取当前行中指定列的值。 +该接口用于以Long形式获取当前行中指定列的值。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| **参数名** | **类型** | **必填** | 说明 | -| ------------- | -------- | -------- | ----------------------- | -| *columnIndex* | number | 是 | 指定的列索引,从0开始。 | +| **参数名** | **类型** | **必填** | 说明 | +| ----------- | -------- | -------- | ----------------------- | +| columnIndex | number | 是 | 指定的列索引,从0开始。 | **返回值:** -| 类型 | 说明 | -| -------- | -------------------------- | -| *number* | 以Long形式返回指定列的值。 | +| 类型 | 说明 | +| ------ | -------------------------- | +| number | 以Long形式返回指定列的值。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let columnIndex = 1 let goToFirstRow = resultSet.goToFirstRow(); let getLong = resultSet.getLong(columnIndex); @@ -263,27 +299,29 @@ console.info('resultSet.getLong: ' + getLong); ## getDouble -getDouble(*columnIndex*: *number*): *number*; +getDouble(columnIndex: number): *number*; -以double形式获取当前行中指定列的值。 +该接口用于以double形式获取当前行中指定列的值。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| **参数名** | **类型** | **必填** | 说明 | -| ------------- | -------- | -------- | ----------------------- | -| *columnIndex* | number | 是 | 指定的列索引,从0开始。 | +| **参数名** | **类型** | **必填** | 说明 | +| ----------- | -------- | -------- | ----------------------- | +| columnIndex | number | 是 | 指定的列索引,从0开始。 | **返回值:** -| 类型 | 说明 | -| -------- | ---------------------------- | -| *number* | 以double形式返回指定列的值。 | +| 类型 | 说明 | +| ------ | ---------------------------- | +| number | 以double形式返回指定列的值。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let columnIndex = 1 let goToFirstRow = resultSet.goToFirstRow(); let getDouble = resultSet.getDouble(columnIndex); @@ -292,41 +330,43 @@ console.info('resultSet.getDouble: ' + getDouble); ## close -close(): *void*; +close(): void; -关闭结果集。 +该接口用于关闭结果集。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **示例:** -```js +```ts resultSet.close(); ``` ## getColumnIndex -getColumnIndex(*columnName*: *string*): *number*; +getColumnIndex(columnName: string): *number*; -根据指定的列名获取列索引。 +该接口用于根据指定的列名获取列索引。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| **参数名** | **类型** | **必填** | 说明 | -| ------------ | -------- | -------- | -------------------------- | -| *columnName* | string | 是 | 表示结果集中指定列的名称。 | +| **参数名** | **类型** | **必填** | 说明 | +| ---------- | -------- | -------- | -------------------------- | +| columnName | string | 是 | 表示结果集中指定列的名称。 | **返回值:** -| 类型 | 说明 | -| -------- | ------------------ | -| *number* | 返回指定列的索引。 | +| 类型 | 说明 | +| ------ | ------------------ | +| number | 返回指定列的索引。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let ColumnName = "name" let getColumnIndex = resultSet.getColumnIndex(ColumnName) console.info('resultSet.getColumnIndex: ' + getColumnIndex); @@ -334,27 +374,29 @@ console.info('resultSet.getColumnIndex: ' + getColumnIndex); ## getColumnName -getColumnName(*columnIndex*: *number*): *string*; +getColumnName(columnIndex: number): *string*; -根据指定的列索引获取列名。 +该接口用于根据指定的列索引获取列名。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| **参数名** | **类型** | **必填** | 说明 | -| ------------- | -------- | -------- | -------------------------- | -| *columnIndex* | number | 是 | 表示结果集中指定列的索引。 | +| **参数名** | **类型** | **必填** | 说明 | +| ----------- | -------- | -------- | -------------------------- | +| columnIndex | number | 是 | 表示结果集中指定列的索引。 | **返回值:** -| 类型 | 说明 | -| -------- | ------------------ | -| *string* | 返回指定列的名称。 | +| 类型 | 说明 | +| ------ | ------------------ | +| string | 返回指定列的名称。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let columnIndex = 1 let getColumnName = resultSet.getColumnName(columnIndex) console.info('resultSet.getColumnName: ' + getColumnName); @@ -362,27 +404,29 @@ console.info('resultSet.getColumnName: ' + getColumnName); ## getDataType -getDataType(*columnIndex*: *number*): DataType; +getDataType(columnIndex: number): DataType; -获取指定列的数据类型。 +该接口用于获取指定列的数据类型。 **系统能力:** SystemCapability.DistributedDataManager.DataShare.Core。 **参数:** -| **参数名** | **类型** | **必填** | 说明 | -| ------------- | -------- | -------- | -------------------------- | -| *columnIndex* | number | 是 | 表示结果集中指定列的索引。 | +| **参数名** | **类型** | **必填** | 说明 | +| ----------- | -------- | -------- | -------------------------- | +| columnIndex | number | 是 | 表示结果集中指定列的索引。 | **返回值:** -| 类型 | 说明 | -| ---------- | ------------------ | -| *DataType* | 返回指定列的类型。 | +| 类型 | 说明 | +| --------------------- | ------------------ | +| [DataType](#datatype) | 返回指定列的类型。 | **示例:** -```js +```ts +// Refer to the instructions for the method of obtaining resultSet +let resultSet; let columnIndex = 1; let getDataType = resultSet.getDataType(columnIndex); console.info('resultSet.getDataType: ' + getDataType); @@ -390,7 +434,7 @@ console.info('resultSet.getDataType: ' + getDataType); ## DataType -用于表示数据类型。 +该类型用于用于表示数据类型。 只能被内部应用使用。 diff --git a/zh-cn/application-dev/reference/apis/js-apis-data-ValuesBucket.md b/zh-cn/application-dev/reference/apis/js-apis-data-ValuesBucket.md index 7f09c9fac8..411f5f65c9 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-data-ValuesBucket.md +++ b/zh-cn/application-dev/reference/apis/js-apis-data-ValuesBucket.md @@ -1,32 +1,34 @@ # ValuesBucket -**数据集(ValuesBucket)** +**数据集(ValuesBucket) **是用户通过DataShare进行插入的数据集合,通过DataShare的insert方法可以进行插入对应的数据集,update方法可以对已经插入的数据集进行修改,数据集以键-值对的形式进行传输。 ->**说明:** +>**说明:** +> >本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 ## 导入模块 -```js -import { ValueType } from './@ohos.data.ValuesBucket'; -import { ValuesBucket } from './@ohos.data.ValuesBucket'; +```ts +import { ValueType } from '@ohos.data.ValuesBucket'; +import { ValuesBucket } from '@ohos.data.ValuesBucket'; ``` ## ValueType -用于表示允许的数据字段类型。 +该类型用于表示允许的数据字段类型。 -| 名称 | 说明 | -| --------- | -------------------- | -| *number* | 表示值类型为数字。 | -| *string* | 表示值类型为字符串。 | -| *boolean* | 表示值类型为布尔值。 | +| 名称 | 说明 | +| ------- | -------------------- | +| number | 表示值类型为数字。 | +| string | 表示值类型为字符串。 | +| boolean | 表示值类型为布尔值。 | ## ValuesBucket -用于存储键值对。 +该类型用于存储一系列键值对。 + +| 名称 | 参数类型 | 必填 | 说明 | +| ------------- | --------------------------------------------- | ---- | ------------------------------------------------------------ | +| [key: string] | [ValueType](#valuetype) \| Uint8Array \| null | 是 | 键的类型为字符串型;值的类型可以为数字,字符串,布尔值,无符号整型8位数组,空值。 | -| 名称 | 参数类型 | 必填 | 说明 | -| ------------- | ------------------------------- | ---- | ---------------- | -| [key: string] | ValueType \| Uint8Array \| null | 是 | 用于存储键值对。 | diff --git a/zh-cn/application-dev/reference/apis/js-apis-data-dataShare.md b/zh-cn/application-dev/reference/apis/js-apis-data-dataShare.md index e4fb9d9c7c..4728f75ff0 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-data-dataShare.md +++ b/zh-cn/application-dev/reference/apis/js-apis-data-dataShare.md @@ -1,14 +1,15 @@ -# 数据共享 +# DataShare -**数据共享(Data Share)** 是应用管理自身和其他应用存储数据的访问,提供与其他应用共享数据的方法,既支持同个设备上应用之间的数据共享,也支持跨设备上应用之间的数据共享。 +**DataShare** 用于应用管理其自身数据,也提供了其他应用共享以及管理其数据的方法,支持同个设备上应用之间的数据共享。 >**说明:** +> >本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 ## 导入模块 -```js +```ts import Ability from '@ohos.application.Ability' import dataShare from '@ohos.data.dataShare' ``` @@ -19,27 +20,29 @@ import dataShare from '@ohos.data.dataShare' createDataShareHelper(context: Context, uri: string, callback: AsyncCallback<DataShareHelper>): void; createDataShareHelper(context: Context, uri: string): Promise<DataShareHelper>; -创建DataShare工具类,返回helper对象,用于连接服务端,并通过callback方式返回,此方法为异步方法。 +创建DataShare工具类,创建helper对象时将连接服务端,与服务端取得连接后或超时后将返回helper实例,此方法为异步方法。在与服务端取得连接后可使用DataShare工具类提供的方法访问或管理服务端的数据,若未连接上服务端,调用工具类提供的方法时将返回error code。 -**系统能力:** 以下各项对应的系统能力均为SystemCapability.DistributedDataManager.DataShare.Consumer。 +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** | 参数名 | 参数类型 | 必填 | 说明 | | -------- | -------------------------------------------------------- | ---- | ------------------------------------------------------------ | -| context | Context | 是 | 应用的上下文环境。 | +| context | [Context](js-apis-application-context.md#context) | 是 | 应用的上下文环境。 | | uri | string | 是 | 指示要打开的文件的路径。 | -| callback | AsyncCallback<[DataShareHelper](#DataShareHelper)> | 是 | DataShareHelper实例创建时调用的回调,返回KVManager对象实例。 | +| callback | AsyncCallback<[DataShareHelper](#datasharehelper)> | 是 | DataShareHelper实例创建完成后调用的回调,返回DataShareHelper对象实例。 | **示例:** -```js -let context = this.context; +```ts +import dataShare from '@ohos.data.dataShare' + let dseUri = ("datashare:///com.samples.datasharetest.DataShare"); -await dataShare.createDataShareHelper(this.context, dseUri, (err,data)=>{ - if(err.code != 0) { - console.info("createDataShareHelper fail, err = " + err); - }erse { +dataShare.createDataShareHelper(this.context, dseUri, (err, data) => { + if (err != undefined) { + console.info("createDataShareHelper fail, error message : " + err); + } else { + console.info("createDataShareHelper end, data : " + data); let dataShareHelper = data; } }); @@ -51,7 +54,9 @@ await dataShare.createDataShareHelper(this.context, dseUri, (err,data)=>{ openFile(uri: string, mode: string, callback: AsyncCallback): void -在指定的远程路径中打开文件(callback形式)。 +打开URI所指定的远程路径中的文件(callback形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** @@ -63,13 +68,15 @@ openFile(uri: string, mode: string, callback: AsyncCallback): void **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; -dataShareHelper.openFile(uri, "rwt", (err,data) => { - if(err.code != 0) { - console.info("createDataShareHelper fail, err = " + err); +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +dataShareHelper.openFile(uri, "rwt", (err, data) => { + if (err != undefined) { + console.info("openFile fail, error message : " + err); }erse { + console.info("openFile end, data : " + data); let fd = data; } }); @@ -79,7 +86,9 @@ dataShareHelper.openFile(uri, "rwt", (err,data) => { openFile(uri: string, mode: string): Promise -在指定的远程路径中打开文件(Promise形式)。 +打开URI所指定的远程路径中的文件(Promise形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** @@ -96,13 +105,15 @@ openFile(uri: string, mode: string): Promise **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; -dataShareHelper.openFile(uri, "rwt").then((data)=>{ - let fd = data; +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +dataShareHelper.openFile(uri, "rwt").then((data) => { + console.info("openFile end, data : " + data); + let fd = data; }).catch((err) => { - console.info("createDataShareHelper fail, err = " + err); + console.info("openFile fail, error message : " + err); }) ``` @@ -110,7 +121,9 @@ dataShareHelper.openFile(uri, "rwt").then((data)=>{ on(type: 'dataChange', uri: string, callback: AsyncCallback\): void -注册观察者以观察给定uri指定的数据callback通知。 +注册观察者以订阅给定uri指定的数据callback通知。若用户(订阅者)已注册了观察者,当有其他用户触发了变更通知时(调用了下文中的notifyChange方法),订阅者将会接受到callback通知。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** @@ -122,9 +135,10 @@ on(type: 'dataChange', uri: string, callback: AsyncCallback\): void **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); dataShareHelper.on("dataChange", uri, onCallback); export function onCallback() { @@ -138,6 +152,8 @@ off(type: 'dataChange', uri: string, callback?: AsyncCallback\): void 注消观察者以停止观察给定uri指定的数据callback通知。 +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 + **参数:** | 名称 | 类型 | 必填 | 描述 | @@ -148,9 +164,10 @@ off(type: 'dataChange', uri: string, callback?: AsyncCallback\): void **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); dataShareHelper.off("dataChange", uri, offCallback); export function offCallback() { @@ -158,11 +175,77 @@ export function offCallback() { } ``` +### notifyChange + +notifyChange(uri: string, callback: AsyncCallback\): void + +通知已注册的观察者uri指定的数据资源的更改(callback形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 + +**参数:** + +| 名称 | 类型 | 必填 | 描述 | +| -------- | -------------------- | ---- | ------------------------ | +| uri | string | 是 | 指示要操作的数据的路径。 | +| callback | AsyncCallback\ | 是 | 回调方法。 | + +**示例:** + +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +dataShareHelper.notifyChange(uri, () => { + console.log("***** notifyChange *****"); +}); +``` + +### notifyChange + +notifyChange(uri: string): Promise\ + +通知已注册的观察者uri指定的数据资源的更改(Promise形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 + +**参数:** + +| 名称 | 类型 | 必填 | 描述 | +| ---- | ------ | ---- | ------------------------ | +| uri | string | 是 | 指示要操作的数据的路径。 | + +**返回值:** + +| 类型 | 说明 | +| -------------- | --------------------- | +| Promise\ | 返回值为Promise对象。 | + +**示例:** + +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +dataShare.createDataShareHelper(this.context, uri, (err, data) => { + if (err != undefined) { + console.info("createDataShareHelper fail, error message : " + err); + } else { + console.info("createDataShareHelper end, data : " + data); + dataShareHelper = data; + } +}); + +dataShareHelper.notifyChange(uri); +``` + ### getType getType(uri: string, callback: AsyncCallback\): void -获取给定URI指定数据的MIME类型(callback形式)。 +获取URI所指定的数据的MIME类型(callback形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** @@ -173,16 +256,17 @@ getType(uri: string, callback: AsyncCallback\): void **示例:** -```js -import dataShare from '@ohos.data.dataShare' -let uri = "datashare:///com.samples.datasharetest.DataShare"; -dataShareHelper.getType(uri,(err,data)=>{ - if(err.code != 0){ - console.log("getType err, err:" + JSON.stringify(err)); - }else{ - console.log("getType end, data:" + JSON.stringify(data)); - let result = data; - } +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +dataShareHelper.getType(uri, (err, data)=>{ + if (err != undefined) { + console.log("getType fail, error message : " + err); + }else{ + console.log("getType end, data : " + data); + let result = data; + } }); ``` @@ -190,7 +274,9 @@ dataShareHelper.getType(uri,(err,data)=>{ getType(uri: string): Promise\ -获取给定URI指定数据的MIME类型(Promise形式)。 +获取URI所指定数据的MIME类型(Promise形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** @@ -206,13 +292,14 @@ getType(uri: string): Promise\ **示例:** -```js -import dataShare from '@ohos.data.dataShare' -let uri = "datashare:///com.samples.datasharetest.DataShare"; +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); dataShareHelper.getType(uri).then((data) => { - console.log("getType end, data:" + data); + console.log("getType end, data : " + data); }).catch((err) => { - console.log("getType end, err:" + err); + console.log("getType fail, error message : " + err); }); ``` @@ -222,6 +309,8 @@ getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback { - if(err.code != 0){ - console.log("dataShareHelper end, err:" + err); - }else{ - console.log("dataShareHelper end, data:" + data); - } + if (err != undefined) { + console.log("dataShareHelper fail, error message : " + err); + }else{ + console.log("dataShareHelper end, data : " + data); + } }); ``` @@ -253,6 +343,8 @@ getFileTypes(uri: string, mimeTypeFilter: string): Promise\> 获取支持的文件的MIME类型(Promise形式)。 +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 + **参数:** | 名称 | 类型 | 必填 | 描述 | @@ -268,14 +360,15 @@ getFileTypes(uri: string, mimeTypeFilter: string): Promise\> **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); let mimeTypeFilter = "image/*"; dataShareHelper.getFileTypes(uri, mimeTypeFilter).then((data) => { - console.log("dataShareHelper end, data:" + data); + console.log("dataShareHelper end, data : " + data); }).catch((err) => { - console.log("dataShareHelper end, err:" + err); + console.log("dataShareHelper fail, error message : " + err); }); ``` @@ -283,26 +376,29 @@ dataShareHelper.getFileTypes(uri, mimeTypeFilter).then((data) => { normalizeUri(uri: string, callback: AsyncCallback\): void -将引用数据功能的给定uri转换为规范化uri(callback形式)。 +将给定的DataShare uri转换为规范化uri(callback形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** -| 名称 | 类型 | 必填 | 描述 | -| -------- | ---------------------- | ---- | ------------------------------------------------------------ | -| uri | string | 是 | 指示要规范化的uri对象。 | -| callback | AsyncCallback\ | 是 | 回调方法。如果数据功能支持uri规范化或null,则返回规范化uri对象。 | +| 名称 | 类型 | 必填 | 描述 | +| -------- | ---------------------- | ---- | -------------------------------------------------------- | +| uri | string | 是 | 指示要规范化的uri对象。 | +| callback | AsyncCallback\ | 是 | 回调方法。如果支持uri规范化或null,则返回规范化uri对象。 | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; -dataShareHelper.normalizeUri(uri,(err,data) => { - if(err.code != 0){ - console.log("normalizeUri end, err:" + err); - }else{ - console.log("normalizeUri = " + data); - } +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +dataShareHelper.normalizeUri(uri, (err, data) => { + if (err != undefined) { + console.log("normalizeUri fail, error message : " + err); + }else{ + console.log("normalizeUri = " + data); + } }); ``` @@ -310,7 +406,9 @@ dataShareHelper.normalizeUri(uri,(err,data) => { normalizeUri(uri: string): Promise\ -将引用数据功能的给定uri转换为规范化uri(Promise形式)。 +将给定的DataShare uri转换为规范化uri(Promise形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** @@ -320,19 +418,20 @@ normalizeUri(uri: string): Promise\ **返回值:** -| 类型 | 说明 | -| ---------------- | ------------------------------------------------------ | -| Promise\ | 如果数据功能支持uri规范化或null,则返回规范化uri对象。 | +| 类型 | 说明 | +| ---------------- | ---------------------------------------------- | +| Promise\ | 如果支持uri规范化或null,则返回规范化uri对象。 | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); dataShareHelper.normalizeUri(uri).then((data) => { - console.log("normalizeUri = " + data); + console.log("normalizeUri = " + data); }).catch((err) => { - console.log("normalizeUri end, err:" + err); + console.log("normalizeUri fail, error message : " + err); }); ``` @@ -340,7 +439,9 @@ dataShareHelper.normalizeUri(uri).then((data) => { denormalizeUri(uri: string, callback: AsyncCallback\): void -将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式)。 +将由normalizeUri(uri)生成的规范化uri转换为非规范化uri(callback形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** @@ -351,15 +452,16 @@ denormalizeUri(uri: string, callback: AsyncCallback\): void **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; -dataShareHelper.denormalizeUri(uri,(err,data) => { - if(err.code != 0){ - console.log("denormalizeUri end, err:" + err); - }else{ - console.log("denormalizeUri = " + data); - } +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +dataShareHelper.denormalizeUri(uri, (err, data) => { + if (err != undefined) { + console.log("denormalizeUri fail, error message : " + err); + }else{ + console.log("denormalizeUri = " + data); + } }); ``` @@ -367,7 +469,9 @@ dataShareHelper.denormalizeUri(uri,(err,data) => { denormalizeUri(uri: string): Promise\ -将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(Promise形式)。 +将由normalizeUri(uri)生成的规范化uri转换为非规范化uri(Promise形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** @@ -383,96 +487,51 @@ denormalizeUri(uri: string): Promise\ **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); dataShareHelper.denormalizeUri(uri).then((data) => { - console.log("denormalizeUri = " + data); + console.log("denormalizeUri = " + data); }).catch((err) => { - console.log("denormalizeUri end, err:" + err); + console.log("denormalizeUri fail, error message : " + err); }); ``` -### notifyChange - -notifyChange(uri: string, callback: AsyncCallback\): void - -通知已注册的观察者uri指定的数据资源的更改(callback形式)。 - -**参数:** - -| 名称 | 类型 | 必填 | 描述 | -| -------- | -------------------- | ---- | ------------------------ | -| uri | string | 是 | 指示要操作的数据的路径。 | -| callback | AsyncCallback\ | 是 | 回调方法。 | - -**示例:** - -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; -dataShareHelper.notifyChange(uri,() => { - console.log("notifyChange!!!!!!!"); -}); -``` - -### notifyChange - -notifyChange(uri: string): Promise\ - -通知已注册的观察者uri指定的数据资源的更改(Promise形式)。 - -**参数:** - -| 名称 | 类型 | 必填 | 描述 | -| ---- | ------ | ---- | ------------------------ | -| uri | string | 是 | 指示要操作的数据的路径。 | - -**返回值:** - -| 类型 | 说明 | -| -------------- | --------------------- | -| Promise\ | 返回值为Promise对象。 | - -**示例:** - -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; -await dataShareHelper.notifyChange(uri); -``` - ### insert insert(uri: string, value: ValuesBucket, callback: AsyncCallback\): void -将单个数据记录插入数据库(callback形式)。 +将单条数据记录插入数据库(callback形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** -| 名称 | 类型 | 必填 | 描述 | -| -------- | ---------------------- | ---- | ------------------------------------------------------ | -| uri | string | 是 | 指示要插入的数据的路径。 | -| value | ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 | -| callback | AsyncCallback\ | 是 | 回调方法,返回插入数据记录的索引。 | +| 名称 | 类型 | 必填 | 描述 | +| -------- | --------------------------------------------------------- | ---- | ------------------------------------------------------------ | +| uri | string | 是 | 指示要插入的数据的路径。 | +| value | [ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket) | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 | +| callback | AsyncCallback\ | 是 | 回调方法,返回插入数据记录的索引。(能否返回索引取决于服务端所使用的数据库) | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); const valueBucket = { "name": "rose", "age": 22, "salary": 200.5, "blobType": u8, } -dataShareHelper.insert( - uri, - valueBucket, - (err, data) => { - console.info("==========================>Called=======================>"); +dataShareHelper.insert(uri, valueBucket, (err, data) => { + if (err != undefined) { + console.log("insert fail, error message : " + err); + }else{ + console.log("insert end, data : " + data); + } }); ``` @@ -480,40 +539,39 @@ dataShareHelper.insert( insert(uri: string, value: ValuesBucket): Promise\ -将单个数据记录插入数据库(Promise形式)。 +将单条数据记录插入数据库(Promise形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** -| 名称 | 类型 | 必填 | 描述 | -| ----- | ------------ | ---- | ------------------------------------------------------ | -| uri | string | 是 | 指示要插入的数据的路径。 | -| value | ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 | +| 名称 | 类型 | 必填 | 描述 | +| ----- | --------------------------------------------------------- | ---- | ------------------------------------------------------ | +| uri | string | 是 | 指示要插入的数据的路径。 | +| value | [ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket) | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 | **返回值:** -| 类型 | 说明 | -| ---------------- | ------------------------ | -| Promise\ | 返回插入数据记录的索引。 | +| 类型 | 说明 | +| ---------------- | ------------------------------------------------------------ | +| Promise\ | 返回插入数据记录的索引。(能否返回索引取决于服务端所使用的数据库) | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); const valueBucket = { "name": "rose1", "age": 221, "salary": 20.5, "blobType": u8, } -dataShareHelper.insert( - uri, - valueBucket - ).then((data) => { - console.info("==========================>insertCallback=======================>"); +dataShareHelper.insert(uri, valueBucket).then((data) => { + console.log("insert end, data : " + data); }).catch((err) => { - console.log("insert end, err:" + err); + console.log("insert fail, error message : " + err); }); ``` @@ -521,30 +579,33 @@ dataShareHelper.insert( batchInsert(uri: string, values: Array\, callback: AsyncCallback\): void -插入数据库(callback形式)。 +将批量数据插入数据库(callback形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** -| 名称 | 类型 | 必填 | 描述 | -| -------- | ---------------------- | ---- | -------------------------------- | -| uri | string | 是 | 指示要插入的数据的路径。 | -| values | Array\ | 是 | 指示要插入的数据记录。 | -| callback | AsyncCallback\ | 是 | 回调方法。返回插入的数据记录数。 | +| 名称 | 类型 | 必填 | 描述 | +| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | +| uri | string | 是 | 指示要插入的数据的路径。 | +| values | Array\<[ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket)> | 是 | 指示要插入的数据记录。 | +| callback | AsyncCallback\ | 是 | 回调方法,返回插入的数据记录数。(能否返回记录数取决于服务端所使用的数据库) | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - -let cars = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,}, +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +let vbs = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,}, {"name": "roe12", "age": 21, "salary": 20.5, "blobType": u8,}, {"name": "roe13", "age": 21, "salary": 20.5, "blobType": u8,}) -dataShareHelper.batchInsert( - uri, - cars, - (err, data) => { - console.info("==========================>Called=======================>"); +dataShareHelper.batchInsert(uri, vbs, (err, data) => { + if (err != undefined) { + console.log("batchInsert fail, error message : " + err); + }else{ + console.log("batchInsert end, data : " + data); + } }); ``` @@ -552,37 +613,36 @@ dataShareHelper.batchInsert( batchInsert(uri: string, values: Array\): Promise\ -将多个数据记录插入数据库(Promise形式)。 +将批量数据插入数据库(Promise形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** -| 名称 | 类型 | 必填 | 描述 | -| ------ | -------------------- | ---- | ------------------------ | -| uri | string | 是 | 指示要插入的数据的路径。 | -| values | Array\ | 是 | 指示要插入的数据记录。 | +| 名称 | 类型 | 必填 | 描述 | +| ------ | ------------------------------------------------------------ | ---- | ------------------------ | +| uri | string | 是 | 指示要插入的数据的路径。 | +| values | Array\<[ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket)> | 是 | 指示要插入的数据记录。 | **返回值:** -| 类型 | 说明 | -| ---------------- | ---------------------- | -| Promise\ | 返回插入的数据记录数。 | +| 类型 | 说明 | +| ---------------- | ------------------------------------------------------------ | +| Promise\ | 返回插入的数据记录数。(能否返回记录数取决于服务端所使用的数据库) | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - -let cars = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,}, +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); +let vbs = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,}, {"name": "roe12", "age": 21, "salary": 20.5, "blobType": u8,}, {"name": "roe13", "age": 21, "salary": 20.5, "blobType": u8,}) -dataShareHelper.batchInsert( - uri, - cars - ).then((data) => { - console.info("==========================>batchInsertCallback=======================>"); +dataShareHelper.batchInsert(uri, vbs).then((data) => { + console.log("batchInsert end, data : " + data); }).catch((err) => { - console.log("batchInsert end, err:" + err); + console.log("batchInsert fail, error message : " + err); }); ``` @@ -590,29 +650,32 @@ dataShareHelper.batchInsert( delete(uri: string, predicates: DataSharePredicates, callback: AsyncCallback\): void -从数据库中删除一个或多个数据记录(callback形式)。 +从数据库中删除一条或多条数据记录(callback形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** -| 名称 | 类型 | 必填 | 描述 | -| ---------- | ---------------------- | ---- | ------------------------------------------------ | -| uri | string | 是 | 指示要删除的数据的路径。 | -| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | -| callback | AsyncCallback\ | 是 | 回调方法。返回已删除的数据记录数。 | +| 名称 | 类型 | 必填 | 描述 | +| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | +| uri | string | 是 | 指示要删除的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。(具体所支持的谓词方法取决于服务端所选用的数据库,如KVDB的删除目前仅支持inKeys谓词) | +| callback | AsyncCallback\ | 是 | 回调方法,返回已删除的数据记录数。(能否返回已删除的数目取决于服务端所使用的数据库) | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); let da = new dataShare.DataSharePredicates(); da.equalTo("name", "ZhangSan"); -dataShareHelper.delete( - uri, - da, - (err, data) => { - console.info("==========================>Called=======================>"); +dataShareHelper.delete(uri, da, (err, data) => { + if (err != undefined) { + console.log("delete fail, error message : " + err); + }else{ + console.log("delete end, data : " + data); + } }); ``` @@ -620,36 +683,35 @@ dataShareHelper.delete( delete(uri: string, predicates: DataSharePredicates): Promise\ -从数据库中删除一个或多个数据记录(Promise形式)。 +从数据库中删除一条或多条数据记录(Promise形式)。 + +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 **参数:** -| 名称 | 类型 | 必填 | 描述 | -| ---------- | ------------------- | ---- | ------------------------------------------------ | -| uri | string | 是 | 指示要删除的数据的路径。 | -| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | +| 名称 | 类型 | 必填 | 描述 | +| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | +| uri | string | 是 | 指示要删除的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。(具体所支持的谓词方法取决于服务端所选用的数据库,如KVDB的删除目前仅支持inKeys谓词) | **返回值:** -| 类型 | 说明 | -| ---------------- | ------------------------ | -| Promise\ | 返回已删除的数据记录数。 | +| 类型 | 说明 | +| ---------------- | ------------------------------------------------------------ | +| Promise\ | 返回已删除的数据记录数。(能否返回已删除的数目取决于服务端所使用的数据库) | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); let da = new dataShare.DataSharePredicates(); da.equalTo("name", "ZhangSan"); -dataShareHelper.delete( - uri, - da - ).then((data) => { - console.info("==========================>deleteCallback=======================>"); +dataShareHelper.delete(uri, da).then((data) => { + console.log("delete end, data : " + data); }).catch((err) => { - console.log("delete end, err:" + err); + console.log("delete fail, error message : " + err); }); ``` @@ -659,21 +721,23 @@ update(uri: string, predicates: DataSharePredicates, value: ValuesBucket, callba 更新数据库中的数据记录(callback形式)。 +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 + **参数:** -| 名称 | 类型 | 必填 | 描述 | -| ---------- | ---------------------- | ---- | ------------------------------------------------ | -| uri | string | 是 | 指示要更新的数据的路径。 | -| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | -| value | ValuesBucket | 是 | 指示要更新的数据。 | -| callback | AsyncCallback\ | 是 | 回调方法,返回更新的数据记录数。 | +| 名称 | 类型 | 必填 | 描述 | +| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | +| uri | string | 是 | 指示要更新的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。(是否支持谓词取决于服务端所选用的数据库,如KVDB并不支持谓词,仅RDB支持) | +| value | [ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket) | 是 | 指示要更新的数据。 | +| callback | AsyncCallback\ | 是 | 回调方法,返回更新的数据记录数。(能否返回更新的数据记录数取决于服务端所使用的数据库) | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); let da = new dataShare.DataSharePredicates(); da.equalTo("name", "ZhangSan"); const va = { @@ -682,12 +746,12 @@ const va = { "salary": 20.5, "blobType": u8, } -dataShareHelper.update( - uri, - da, - va, - (err, data) => { - console.info("==========================>Called=======================>"); +dataShareHelper.update(uri, da, va, (err, data) => { + if (err != undefined) { + console.log("update fail, error message : " + err); + }else{ + console.log("update end, data : " + data); + } }); ``` @@ -697,26 +761,28 @@ update(uri: string, predicates: DataSharePredicates, value: ValuesBucket): Promi 更新数据库中的数据记录(Promise形式)。 +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 + **参数:** -| 名称 | 类型 | 必填 | 描述 | -| ---------- | ------------------- | ---- | ------------------------------------------------ | -| uri | string | 是 | 指示要更新的数据的路径。 | -| predicates | DataSharePredicates | 是 | 指示要更新的数据。 | -| value | ValuesBucket | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | +| 名称 | 类型 | 必填 | 描述 | +| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | +| uri | string | 是 | 指示要更新的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。(是否支持谓词取决于服务端所选用的数据库,如KVDB并不支持谓词,仅RDB支持) | +| value | [ValuesBucket](js-apis-data-ValuesBucket.md#valuesbucket) | 是 | 指示要更新的数据。 | **返回值:** -| 类型 | 说明 | -| ---------------- | -------------------------------------------- | -| Promise\ | 返回值为Promise对象,Promise中包含应用信息。 | +| 类型 | 说明 | +| ---------------- | ------------------------------------------------------------ | +| Promise\ | 返回更新的数据记录数。(能否返回更新的数据记录数取决于服务端所使用的数据库) | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); let da = new dataShare.DataSharePredicates(); da.equalTo("name", "ZhangSan"); const va = { @@ -725,14 +791,10 @@ const va = { "salary": 20.5, "blobType": u8, } -dataShareHelper.update( - uri, - da, - va, - ).then((data) => { - console.info("==========================>updateCallback=======================>"); +dataShareHelper.update(uri, da, va).then((data) => { + console.log("update end, data : " + data); }).catch((err) => { - console.log("update end, err:" + err); + console.log("update fail, error message : " + err); }); ``` @@ -742,30 +804,32 @@ query(uri: string, predicates: DataSharePredicates, columns: Array, call 查询数据库中的数据(callback形式)。 +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 + **参数:** -| 名称 | 类型 | 必填 | 描述 | -| ---------- | ---------------------------------- | ---- | ------------------------------------------------ | -| uri | string | 是 | 指示要查询的数据的路径。 | -| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | -| columns | Array | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 | -| callback | AsyncCallback\ | 是 | 回调方法,返回查询结果。 | +| 名称 | 类型 | 必填 | 描述 | +| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | +| uri | string | 是 | 指示要查询的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。(具体所支持的谓词方法取决于服务端所选用的数据库,如KVDB目前仅支持inKeys和prefixKey) | +| columns | Array | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 | +| callback | AsyncCallback\<[DataShareResultSet](js-apis-data-DataShareResultSet.md#datashareresultset)> | 是 | 回调方法,返回查询结果。 | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); let columns = ["*"]; let da = new dataShare.DataSharePredicates(); da.equalTo("name", "ZhangSan"); -dataShareHelper.query( - uri, - da, - columns, - (err, data) => { - console.info("==========================>Called=======================>"); +dataShareHelper.query(uri, da, columns, (err, data) => { + if (err != undefined) { + console.log("query fail, error message : " + err); + }else{ + console.log("query end, data : " + data); + } }); ``` @@ -777,36 +841,34 @@ query(uri: string, predicates: DataSharePredicates, columns: Array): Pro 查询数据库中的数据(Promise形式)。 +**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer。 + **参数:** -| 名称 | 类型 | 必填 | 描述 | -| ---------- | ------------------- | ---- | ------------------------------------------------ | -| uri | string | 是 | 指示要查询的数据的路径。 | -| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 | -| columns | Array | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 | +| 名称 | 类型 | 必填 | 描述 | +| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | +| uri | string | 是 | 指示要查询的数据的路径。 | +| predicates | [DataSharePredicates](js-apis-data-DataSharePredicates.md#datasharepredicates) | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。(具体所支持的谓词方法取决于服务端所选用的数据库,如KVDB目前仅支持inKeys和prefixKey) | +| columns | Array | 是 | 指示要查询的列。如果此参数为空,则查询所有列。 | **返回值:** -| 类型 | 说明 | -| ---------------------------- | -------------- | -| Promise\ | 返回查询结果。 | +| 类型 | 说明 | +| ------------------------------------------------------------ | -------------- | +| Promise\<[DataShareResultSet](js-apis-data-DataShareResultSet.md#datashareresultset)> | 返回查询结果。 | **示例:** -```js -import dataShare from '@ohos.data.dataShare'; -let uri = "datashare:///com.samples.datasharetest.DataShare"; - +```ts +// Refer to the createDataShareHelper for the method of obtaining dataShareHelper +let dataShareHelper; +let uri = ("datashare:///com.samples.datasharetest.DataShare"); let columns = ["*"]; let da = new dataShare.DataSharePredicates(); da.equalTo("name", "ZhangSan"); -dataShareHelper.query( - uri, - da, - columns, - ).then((data) => { - console.info("==========================>queryCallback=======================>"); +dataShareHelper.query(uri, da, columns).then((data) => { + console.log("query end, data : " + data); }).catch((err) => { - console.log("query end, err:" + err); + console.log("query fail, error message : " + err); }); ``` -- GitLab