“5dd16eab94c917fda75ddd5aee5c87e3b035e48b”上不存在“...changelogs/git@gitcode.net:openharmony/docs.git”
未验证 提交 eb4e6814 编写于 作者: O openharmony_ci 提交者: Gitee

!23779 [翻译完成】#I7VTIW

Merge pull request !23779 from Annie_wang/PR22963A
...@@ -57,15 +57,16 @@ Before implementing a **DataShare** service, you need to create a **DataShareExt ...@@ -57,15 +57,16 @@ Before implementing a **DataShare** service, you need to create a **DataShareExt
2. Right-click the **DataShareAbility** directory, and choose **New > TypeScript File** to create a file named **DataShareExtAbility.ts**. 2. Right-click the **DataShareAbility** directory, and choose **New > TypeScript File** to create a file named **DataShareExtAbility.ts**.
3. Import **@ohos.application.DataShareExtensionAbility** and other dependencies to the **DataShareExtAbility.ts** file, and 3. Import **@ohos.application.DataShareExtensionAbility** and other dependencies to the **DataShareExtAbility.ts** file, and override the service implementation as required. For example, if the data provider provides only the data insertion, deletion, and query services, you can override only these APIs.
override the service implementation as required. For example, if the data provider provides only the data insertion, deletion, and query services, you can override only these APIs.
```js ```js
import Extension from '@ohos.application.DataShareExtensionAbility'; import Extension from '@ohos.application.DataShareExtensionAbility';
import rdb from '@ohos.data.relationalStore'; import rdb from '@ohos.data.relationalStore';
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
import relationalStore from '@ohos.data.relationalStore';
import Want from '@ohos.app.ability.Want';
``` ```
4. Implement the data provider services. For example, implement data storage of the data provider by using a database, reading and writing files, or accessing the network. 4. Implement the data provider services. For example, implement data storage of the data provider by using a database, reading and writing files, or accessing the network.
```js ```js
...@@ -75,20 +76,20 @@ override the service implementation as required. For example, if the data provid ...@@ -75,20 +76,20 @@ override the service implementation as required. For example, if the data provid
+ TBL_NAME + TBL_NAME
+ ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, isStudent BOOLEAN, Binary BINARY)'; + ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, isStudent BOOLEAN, Binary BINARY)';
let rdbStore; let rdbStore: relationalStore.RdbStore;
let result; let result: string;
export default class DataShareExtAbility extends Extension { export default class DataShareExtAbility extends Extension {
private rdbStore_; private rdbStore_: relationalStore.RdbStore;
// Override onCreate(). // Override onCreate().
onCreate(want, callback) { onCreate(want: Want, callback: Function) {
result = this.context.cacheDir + '/datashare.txt'; result = this.context.cacheDir + '/datashare.txt';
// Create an RDB store. // Create an RDB store.
rdb.getRdbStore(this.context, { rdb.getRdbStore(this.context, {
name: DB_NAME, name: DB_NAME,
securityLevel: rdb.SecurityLevel.S1 securityLevel: rdb.SecurityLevel.S1
}, function (err, data) { }, (err, data) => {
rdbStore = data; rdbStore = data;
rdbStore.executeSql(DDL_TBL_CREATE, [], (err) => { rdbStore.executeSql(DDL_TBL_CREATE, [], (err) => {
console.info(`DataShareExtAbility onCreate, executeSql done err:${err}`); console.info(`DataShareExtAbility onCreate, executeSql done err:${err}`);
...@@ -100,7 +101,7 @@ override the service implementation as required. For example, if the data provid ...@@ -100,7 +101,7 @@ override the service implementation as required. For example, if the data provid
} }
// Override query(). // Override query().
query(uri, predicates, columns, callback) { query(uri: string, predicates: dataSharePredicates.DataSharePredicates, columns: Array<string>, callback: Function) {
if (predicates === null || predicates === undefined) { if (predicates === null || predicates === undefined) {
console.info('invalid predicates'); console.info('invalid predicates');
} }
...@@ -188,6 +189,8 @@ override the service implementation as required. For example, if the data provid ...@@ -188,6 +189,8 @@ override the service implementation as required. For example, if the data provid
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import dataShare from '@ohos.data.dataShare'; import dataShare from '@ohos.data.dataShare';
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
import { ValuesBucket } from '@ohos.data.ValuesBucket'
import window from '@ohos.window';
``` ```
2. Define the URI string for communicating with the data provider. 2. Define the URI string for communicating with the data provider.
...@@ -200,11 +203,11 @@ override the service implementation as required. For example, if the data provid ...@@ -200,11 +203,11 @@ override the service implementation as required. For example, if the data provid
3. Create a **DataShareHelper** instance. 3. Create a **DataShareHelper** instance.
```js ```js
let dsHelper; let dsHelper: dataShare.DataShareHelper;
let abilityContext; let abilityContext: Context;
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage) { onWindowStageCreate(windowStage: window.WindowStage) {
abilityContext = this.context; abilityContext = this.context;
dataShare.createDataShareHelper(abilityContext, dseUri, (err, data) => { dataShare.createDataShareHelper(abilityContext, dseUri, (err, data) => {
dsHelper = data; dsHelper = data;
...@@ -217,8 +220,19 @@ override the service implementation as required. For example, if the data provid ...@@ -217,8 +220,19 @@ override the service implementation as required. For example, if the data provid
```js ```js
// Construct a piece of data. // Construct a piece of data.
let valuesBucket = { 'name': 'ZhangSan', 'age': 21, 'isStudent': false, 'Binary': new Uint8Array([1, 2, 3]) }; let key1 = 'name';
let updateBucket = { 'name': 'LiSi', 'age': 18, 'isStudent': true, 'Binary': new Uint8Array([1, 2, 3]) }; let key2 = 'age';
let key3 = 'isStudent';
let key4 = 'Binary';
let valueName1 = 'ZhangSan';
let valueName2 = 'LiSi';
let valueAge1 = 21;
let valueAge2 = 18;
let valueIsStudent1 = false;
let valueIsStudent2 = true;
let valueBinary = new Uint8Array([1, 2, 3]);
let valuesBucket: ValuesBucket = { key1: valueName1, key2: valueAge1, key3: valueIsStudent1, key4: valueBinary };
let updateBucket: ValuesBucket = { key1: valueName2, key2: valueAge2, key3: valueIsStudent2, key4: valueBinary };
let predicates = new dataSharePredicates.DataSharePredicates(); let predicates = new dataSharePredicates.DataSharePredicates();
let valArray = ['*']; let valArray = ['*'];
// Insert a piece of data. // Insert a piece of data.
...@@ -237,5 +251,4 @@ override the service implementation as required. For example, if the data provid ...@@ -237,5 +251,4 @@ override the service implementation as required. For example, if the data provid
dsHelper.delete(dseUri, predicates, (err, data) => { dsHelper.delete(dseUri, predicates, (err, data) => {
console.info(`dsHelper delete result:${data}`); console.info(`dsHelper delete result:${data}`);
}); });
``` ```
\ No newline at end of file
...@@ -4,11 +4,10 @@ The **DataShareExtensionAbility** module provides data share services based on t ...@@ -4,11 +4,10 @@ The **DataShareExtensionAbility** module provides data share services based on t
>**NOTE** >**NOTE**
> >
> The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version. > - The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
> >
> The APIs provided by this module are system APIs. > - The APIs provided by this module are system APIs and can be used only in the stage model.
> >
> The APIs of this module can be used only in the stage model.
## Modules to Import ## Modules to Import
...@@ -21,7 +20,7 @@ import DataShareExtensionAbility from '@ohos.application.DataShareExtensionAbili ...@@ -21,7 +20,7 @@ import DataShareExtensionAbility from '@ohos.application.DataShareExtensionAbili
**System capability**: SystemCapability.DistributedDataManager.DataShare.Provider **System capability**: SystemCapability.DistributedDataManager.DataShare.Provider
| Name| Type| Readable| Writable| Description| | Name| Type| Readable| Writable| Description|
| -------- | -------- | -------- | -------- | -------- | | -------- | -------- | -------- | -------- | -------- |
| context<sup>10+</sup> | [ExtensionContext](js-apis-inner-application-extensionContext.md) | Yes| No|DataShareExtensionAbility context, inherited from [ExtensionContext](js-apis-inner-application-extensionContext.md).| | context<sup>10+</sup> | [ExtensionContext](js-apis-inner-application-extensionContext.md) | Yes| No|DataShareExtensionAbility context, inherited from [ExtensionContext](js-apis-inner-application-extensionContext.md).|
...@@ -50,17 +49,17 @@ let TBL_NAME = 'TBL00'; ...@@ -50,17 +49,17 @@ let TBL_NAME = 'TBL00';
let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS ' let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS '
+ TBL_NAME + TBL_NAME
+ ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)'; + ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)';
let rdbStore; let rdbStore: relationalStore.RdbStore;
export default class DataShareExtAbility extends DataShareExtensionAbility { export default class DataShareExtAbility extends DataShareExtensionAbility {
onCreate(want, callback) { onCreate(want: Want, callback: Function) {
rdb.getRdbStore(this.context, { rdb.getRdbStore(this.context, {
name: DB_NAME, name: DB_NAME,
securityLevel: rdb.SecurityLevel.S1 securityLevel: rdb.SecurityLevel.S1
}, function (err, data) { }, (err, data) => {
console.info(`getRdbStore done, data : ${data}`); console.info(`getRdbStore done, data : ${data}`);
rdbStore = data; rdbStore = data;
rdbStore.executeSql(DDL_TBL_CREATE, [], function (err) { rdbStore.executeSql(DDL_TBL_CREATE, [], (err) => {
console.error(`executeSql done, error message : ${err}`); console.error(`executeSql done, error message : ${err}`);
}); });
if (callback) { if (callback) {
...@@ -91,21 +90,22 @@ Inserts data into the database. This API can be overridden as required. ...@@ -91,21 +90,22 @@ Inserts data into the database. This API can be overridden as required.
```ts ```ts
import rdb from '@ohos.data.relationalStore'; import rdb from '@ohos.data.relationalStore';
import { ValuesBucket } from '@ohos.data.ValuesBucket'
let DB_NAME = 'DB00.db'; let DB_NAME = 'DB00.db';
let TBL_NAME = 'TBL00'; let TBL_NAME = 'TBL00';
let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS ' let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS '
+ TBL_NAME + TBL_NAME
+ ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)'; + ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)';
let rdbStore; let rdbStore: relationalStore.RdbStore;
export default class DataShareExtAbility extends DataShareExtensionAbility { export default class DataShareExtAbility extends DataShareExtensionAbility {
insert(uri, valueBucket, callback) { insert(uri: string, valueBucket: ValuesBucket, callback: Function) {
if (valueBucket === null) { if (valueBucket === null) {
console.error('invalid valueBuckets'); console.error('invalid valueBuckets');
return; return;
} }
rdbStore.insert(TBL_NAME, valueBucket, function (err, ret) { rdbStore.insert(TBL_NAME, valueBucket, (err, ret) => {
console.info(`callback ret: ${ret}`); console.info(`callback ret: ${ret}`);
if (callback !== undefined) { if (callback !== undefined) {
callback(err, ret); callback(err, ret);
...@@ -136,20 +136,22 @@ Updates data in the database. This API can be overridden as required. ...@@ -136,20 +136,22 @@ Updates data in the database. This API can be overridden as required.
```ts ```ts
import rdb from '@ohos.data.relationalStore'; import rdb from '@ohos.data.relationalStore';
import dataSharePredicates from '@ohos.data.dataSharePredicates';
import { ValuesBucket } from '@ohos.data.ValuesBucket'
let DB_NAME = 'DB00.db'; let DB_NAME = 'DB00.db';
let TBL_NAME = 'TBL00'; let TBL_NAME = 'TBL00';
let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS ' let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS '
+ TBL_NAME + TBL_NAME
+ ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)'; + ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)';
let rdbStore; let rdbStore: relationalStore.RdbStore;
export default class DataShareExtAbility extends DataShareExtensionAbility { export default class DataShareExtAbility extends DataShareExtensionAbility {
update(uri, predicates, valueBucket, callback) { update(uri: string, predicates: dataSharePredicates.DataSharePredicates, valueBucket: ValuesBucket, callback: Function) {
if (predicates === null || predicates === undefined) { if (predicates === null || predicates === undefined) {
return; return;
} }
rdbStore.update(TBL_NAME, valueBucket, predicates, function (err, ret) { rdbStore.update(TBL_NAME, valueBucket, predicates, (err, ret) => {
if (callback !== undefined) { if (callback !== undefined) {
callback(err, ret); callback(err, ret);
} }
...@@ -178,20 +180,21 @@ Deletes data from the database. This API can be overridden as required. ...@@ -178,20 +180,21 @@ Deletes data from the database. This API can be overridden as required.
```ts ```ts
import rdb from '@ohos.data.relationalStore'; import rdb from '@ohos.data.relationalStore';
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let DB_NAME = 'DB00.db'; let DB_NAME = 'DB00.db';
let TBL_NAME = 'TBL00'; let TBL_NAME = 'TBL00';
let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS ' let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS '
+ TBL_NAME + TBL_NAME
+ ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)'; + ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)';
let rdbStore; let rdbStore: relationalStore.RdbStore;
export default class DataShareExtAbility extends DataShareExtensionAbility { export default class DataShareExtAbility extends DataShareExtensionAbility {
delete(uri, predicates, callback) { delete(uri: string, predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
if (predicates === null || predicates === undefined) { if (predicates === null || predicates === undefined) {
return; return;
} }
rdbStore.delete(TBL_NAME, predicates, function (err, ret) { rdbStore.delete(TBL_NAME, predicates, (err, ret) => {
if (callback !== undefined) { if (callback !== undefined) {
callback(err, ret); callback(err, ret);
} }
...@@ -221,20 +224,21 @@ Queries data from the database. This API can be overridden as required. ...@@ -221,20 +224,21 @@ Queries data from the database. This API can be overridden as required.
```ts ```ts
import rdb from '@ohos.data.relationalStore'; import rdb from '@ohos.data.relationalStore';
import dataSharePredicates from '@ohos.data.dataSharePredicates';
let DB_NAME = 'DB00.db'; let DB_NAME = 'DB00.db';
let TBL_NAME = 'TBL00'; let TBL_NAME = 'TBL00';
let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS ' let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS '
+ TBL_NAME + TBL_NAME
+ ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)'; + ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)';
let rdbStore; let rdbStore: relationalStore.RdbStore;
export default class DataShareExtAbility extends DataShareExtensionAbility { export default class DataShareExtAbility extends DataShareExtensionAbility {
query(uri, predicates, columns, callback) { query(uri: string, predicates: dataSharePredicates.DataSharePredicates, columns: Array<string>, callback: Function) {
if (predicates === null || predicates === undefined) { if (predicates === null || predicates === undefined) {
return; return;
} }
rdbStore.query(TBL_NAME, predicates, columns, function (err, resultSet) { rdbStore.query(TBL_NAME, predicates, columns, (err, resultSet) => {
if (resultSet !== undefined) { if (resultSet !== undefined) {
console.info(`resultSet.rowCount: ${resultSet.rowCount}`); console.info(`resultSet.rowCount: ${resultSet.rowCount}`);
} }
...@@ -266,21 +270,22 @@ Batch inserts data into the database. This API is called by the server and can b ...@@ -266,21 +270,22 @@ Batch inserts data into the database. This API is called by the server and can b
```ts ```ts
import rdb from '@ohos.data.relationalStore'; import rdb from '@ohos.data.relationalStore';
import { ValuesBucket } from '@ohos.data.ValuesBucket'
let DB_NAME = 'DB00.db'; let DB_NAME = 'DB00.db';
let TBL_NAME = 'TBL00'; let TBL_NAME = 'TBL00';
let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS ' let DDL_TBL_CREATE = 'CREATE TABLE IF NOT EXISTS '
+ TBL_NAME + TBL_NAME
+ ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)'; + ' (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, phoneNumber DOUBLE, isStudent BOOLEAN, Binary BINARY)';
let rdbStore; let rdbStore: relationalStore.RdbStore;
export default class DataShareExtAbility extends DataShareExtensionAbility { export default class DataShareExtAbility extends DataShareExtensionAbility {
batchInsert(uri, valueBuckets, callback) { batchInsert(uri: string, valueBuckets: Array<ValuesBucket>, callback: Function) {
if (valueBuckets === null || valueBuckets.length === undefined) { if (valueBuckets === null || valueBuckets.length === undefined) {
console.error('invalid valueBuckets'); console.error('invalid valueBuckets');
return; return;
} }
rdbStore.batchInsert(TBL_NAME, valueBuckets, function (err, ret) { rdbStore.batchInsert(TBL_NAME, valueBuckets, (err, ret) => {
if (callback !== undefined) { if (callback !== undefined) {
callback(err, ret); callback(err, ret);
} }
...@@ -308,11 +313,17 @@ Normalizes a URI. This API can be overridden as required. ...@@ -308,11 +313,17 @@ Normalizes a URI. This API can be overridden as required.
```ts ```ts
export default class DataShareExtAbility extends DataShareExtensionAbility { export default class DataShareExtAbility extends DataShareExtensionAbility {
normalizeUri(uri, callback) { normalizeUri(uri: string, callback: Function) {
let err = {'code':0}; let key = 'code';
let ret = `normalize: ${uri}`; let value = 0;
callback(err, ret); let err: BusinessError = {
} code: value,
name: key,
message: key
};
let ret: string = `normalize: ${uri}`;
callback(err, ret);
}
}; };
``` ```
...@@ -335,10 +346,16 @@ Denormalizes a URI. This API can be overridden as required. ...@@ -335,10 +346,16 @@ Denormalizes a URI. This API can be overridden as required.
```ts ```ts
export default class DataShareExtAbility extends DataShareExtensionAbility { export default class DataShareExtAbility extends DataShareExtensionAbility {
denormalizeUri(uri, callback) { denormalizeUri(uri: string, callback: Function) {
let err = {'code':0}; let key = 'code';
let ret = `denormalize ${uri}`; let value = 0;
callback(err, ret); let err: BusinessError = {
} code: value,
name: key,
message: key
};
let ret = `denormalize ${uri}`;
callback(err, ret);
}
}; };
``` ```
...@@ -4,9 +4,9 @@ The **DataShareResultSet** module provides APIs for accessing the result set obt ...@@ -4,9 +4,9 @@ The **DataShareResultSet** module provides APIs for accessing the result set obt
> **NOTE** > **NOTE**
> >
> The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version. > - The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
> >
> The APIs provided by this module are system APIs. > - The APIs provided by this module are system APIs.
## Modules to Import ## Modules to Import
...@@ -22,8 +22,9 @@ You can call [query()](js-apis-data-dataShare.md#query) to obtain the **DataShar ...@@ -22,8 +22,9 @@ You can call [query()](js-apis-data-dataShare.md#query) to obtain the **DataShar
```ts ```ts
import dataShare from '@ohos.data.dataShare'; import dataShare from '@ohos.data.dataShare';
import dataSharePredicates from '@ohos.data.dataSharePredicates' import dataSharePredicates from '@ohos.data.dataSharePredicates'
import { BusinessError } from '@ohos.base'
let dataShareHelper; let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
await dataShare.createDataShareHelper(this.context, uri, (err, data) => { await dataShare.createDataShareHelper(this.context, uri, (err, data) => {
if (err != undefined) { if (err != undefined) {
...@@ -36,12 +37,12 @@ await dataShare.createDataShareHelper(this.context, uri, (err, data) => { ...@@ -36,12 +37,12 @@ await dataShare.createDataShareHelper(this.context, uri, (err, data) => {
let columns = ["*"]; let columns = ["*"];
let da = new dataSharePredicates.DataSharePredicates(); let da = new dataSharePredicates.DataSharePredicates();
let resultSet; let resultSet: DataShareResultSet;
da.equalTo("name", "ZhangSan"); da.equalTo("name", "ZhangSan");
dataShareHelper.query(uri, da, columns).then((data) => { dataShareHelper.query(uri, da, columns).then((data: DataShareResultSet) => {
console.info("query end, data : " + data); console.info("query end, data : " + data);
resultSet = data; resultSet = data;
}).catch((err) => { }).catch((err: BusinessError) => {
console.error("query fail, error message : " + err); console.error("query fail, error message : " + err);
}); });
``` ```
......
...@@ -51,7 +51,7 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -51,7 +51,7 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let dataShareHelper; let dataShareHelper: dataShare.DataShareHelper;
try { try {
dataShare.createDataShareHelper(this.context, uri, (err, data) => { dataShare.createDataShareHelper(this.context, uri, (err, data) => {
if (err !== undefined) { if (err !== undefined) {
...@@ -100,7 +100,7 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -100,7 +100,7 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
let uri = ("datashareproxy://com.samples.datasharetest.DataShare"); let uri = ("datashareproxy://com.samples.datasharetest.DataShare");
let dataShareHelper; let dataShareHelper: dataShare.DataShareHelper;
try { try {
dataShare.createDataShareHelper(this.context, uri, {isProxy : true}, (err, data) => { dataShare.createDataShareHelper(this.context, uri, {isProxy : true}, (err, data) => {
if (err !== undefined) { if (err !== undefined) {
...@@ -153,14 +153,15 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -153,14 +153,15 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import { BusinessError } from '@ohos.base'
let uri = ("datashareproxy://com.samples.datasharetest.DataShare"); let uri = ("datashareproxy://com.samples.datasharetest.DataShare");
let dataShareHelper; let dataShareHelper: dataShare.DataShareHelper;
try { try {
dataShare.createDataShareHelper(this.context, uri, {isProxy : true}).then((data) => { dataShare.createDataShareHelper(this.context, uri, {isProxy : true}).then((data: dataShare.DataShareHelper) => {
console.info("createDataShareHelper succeed, data : " + data); console.info("createDataShareHelper succeed, data : " + data);
dataShareHelper = data; dataShareHelper = data;
}). catch((err) => { }). catch((err: BusinessError) => {
console.error(`createDataShareHelper error: code: ${err.code}, message: ${err.message} `); console.error(`createDataShareHelper error: code: ${err.code}, message: ${err.message} `);
}); });
} catch (err) { } catch (err) {
...@@ -268,7 +269,8 @@ Subscribes to changes of the specified data. After an observer is registered, th ...@@ -268,7 +269,8 @@ Subscribes to changes of the specified data. After an observer is registered, th
**Example** **Example**
```ts ```ts
function onCallback() { let dataShareHelper: dataShare.DataShareHelper;
let onCallback: () => void = (): void => {
console.info("**** Observer on callback ****"); console.info("**** Observer on callback ****");
} }
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
...@@ -294,8 +296,9 @@ Unsubscribes from data changes. ...@@ -294,8 +296,9 @@ Unsubscribes from data changes.
**Example** **Example**
```ts ```ts
function callback() { let dataShareHelper: dataShare.DataShareHelper;
console.info("**** Observer callback ****"); let callback: () => void = (): void => {
console.info("**** Observer on callback ****");
} }
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
dataShareHelper.on("dataChange", uri, callback); dataShareHelper.on("dataChange", uri, callback);
...@@ -329,12 +332,17 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -329,12 +332,17 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
**Example** **Example**
```ts ```ts
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashareproxy://com.samples.datasharetest.DataShare"); let uri = ("datashareproxy://com.samples.datasharetest.DataShare");
let subscriberId = '11'; let subscriberId = '11';
let template = { let key1: string = "p1";
let value1: string = "select cityColumn as city_1, visitedCilumn as visited_1 from citys where like = true";
let key2: string = "p2";
let value2: string = "select cityColumn as city_2, visitedCilumn as visited_2 from citys where like = false";
let template: dataShare.Template = {
predicates : { predicates : {
"p1" : "select cityColumn as city_1, visitedCilumn as visited_1 from citys where like = true", key1 : value1,
"p2" : "select cityColumn as city_2, visitedCilumn as visited_2 from citys where like = false", key2 : value2,
}, },
scheduler : "select remindTimer(time) from TBL00" scheduler : "select remindTimer(time) from TBL00"
} }
...@@ -367,12 +375,17 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -367,12 +375,17 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
**Example** **Example**
```ts ```ts
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashareproxy://com.samples.datasharetest.DataShare"); let uri = ("datashareproxy://com.samples.datasharetest.DataShare");
let subscriberId = '11'; let subscriberId = '11';
let template = { let key1: string = "p1";
let value1: string = "select cityColumn as city_1, visitedCilumn as visited_1 from citys where like = true";
let key2: string = "p2";
let value2: string = "select cityColumn as city_2, visitedCilumn as visited_2 from citys where like = false";
let template: dataShare.Template = {
predicates : { predicates : {
"p1" : "select cityColumn as city_1, visitedCilumn as visited_1 from citys where like = true", key1 : value1,
"p2" : "select cityColumn as city_2, visitedCilumn as visited_2 from citys where like = false", key2 : value2,
}, },
scheduler : "select remindTimer(time) from TBL00" scheduler : "select remindTimer(time) from TBL00"
} }
...@@ -406,7 +419,10 @@ Subscribes to the changes of the data corresponding to the specified URI and tem ...@@ -406,7 +419,10 @@ Subscribes to the changes of the data corresponding to the specified URI and tem
**Example** **Example**
```ts ```ts
function onCallback(err, node:dataShare.RdbDataChangeNode) { import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let onCallback: (err: BusinessError, node: dataShare.RdbDataChangeNode) => void = (err: BusinessError, node:dataShare.RdbDataChangeNode): void => {
console.info("onCallback " + JSON.stringify(node.uri)); console.info("onCallback " + JSON.stringify(node.uri));
console.info("onCallback " + JSON.stringify(node.templateId)); console.info("onCallback " + JSON.stringify(node.templateId));
console.info("onCallback " + node.data.length); console.info("onCallback " + node.data.length);
...@@ -446,6 +462,7 @@ Unsubscribes from the changes of the data corresponding to the specified URI and ...@@ -446,6 +462,7 @@ Unsubscribes from the changes of the data corresponding to the specified URI and
**Example** **Example**
```ts ```ts
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashareproxy://com.samples.datasharetest.DataShare"); let uri = ("datashareproxy://com.samples.datasharetest.DataShare");
let templateId:dataShare.TemplateId = {subscriberId:"11", bundleNameOfOwner:"com.acts.ohos.data.datasharetest"}; let templateId:dataShare.TemplateId = {subscriberId:"11", bundleNameOfOwner:"com.acts.ohos.data.datasharetest"};
let result:Array<dataShare.OperationResult> = dataShareHelper.off("rdbDataChange", [uri], templateId); let result:Array<dataShare.OperationResult> = dataShareHelper.off("rdbDataChange", [uri], templateId);
...@@ -477,7 +494,10 @@ Subscribes to the changes of the published data. ...@@ -477,7 +494,10 @@ Subscribes to the changes of the published data.
**Example** **Example**
```ts ```ts
function onPublishCallback(err, node:dataShare.PublishedDataChangeNode) { import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let onPublishCallback: (err: BusinessError, node: dataShare.PublishedDataChangeNode) => void = (err: BusinessError, node:dataShare.PublishedDataChangeNode): void => {
console.info("onPublishCallback node bundleName " + JSON.stringify(node.bundleName)); console.info("onPublishCallback node bundleName " + JSON.stringify(node.bundleName));
console.info("onPublishCallback node data size" + node.data.length); console.info("onPublishCallback node data size" + node.data.length);
for (let i = 0; i < node.data.length; i++) { for (let i = 0; i < node.data.length; i++) {
...@@ -521,7 +541,10 @@ Unsubscribes from the changes of the published data. ...@@ -521,7 +541,10 @@ Unsubscribes from the changes of the published data.
**Example** **Example**
```ts ```ts
function offCallback(err, node:dataShare.PublishedDataChangeNode) { import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let offCallback: (err: BusinessError, node: dataShare.PublishedDataChangeNode) => void = (err: BusinessError, node:dataShare.PublishedDataChangeNode): void => {
console.info("**** Observer off callback ****"); console.info("**** Observer off callback ****");
} }
let uris:Array<string> = ["city", "datashareproxy://com.acts.ohos.data.datasharetest/appInfo", "key2"]; let uris:Array<string> = ["city", "datashareproxy://com.acts.ohos.data.datasharetest/appInfo", "key2"];
...@@ -557,10 +580,13 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -557,10 +580,13 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
**Example** **Example**
```ts ```ts
import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let arrayBuffer = new ArrayBuffer(1); let arrayBuffer = new ArrayBuffer(1);
let version = 1; let version = 1;
let dataArray : Array<dataShare.PublishedItem> = [{key:"key2", subscriberId:"11", data:arrayBuffer}]; let dataArray : Array<dataShare.PublishedItem> = [{key:"key2", subscriberId:"11", data:arrayBuffer}];
function publishCallback(err, result: Array<dataShare.OperationResult>) { let publishCallback: (err: BusinessError, result: Array<dataShare.OperationResult>) => void = (err: BusinessError, result: Array<dataShare.OperationResult>): void => {
console.info("publishCallback " + JSON.stringify(result)); console.info("publishCallback " + JSON.stringify(result));
} }
try { try {
...@@ -598,7 +624,10 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -598,7 +624,10 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
| 15700012 | The data area is not exist.| | 15700012 | The data area is not exist.|
```ts ```ts
function publishCallback(err, result: Array<dataShare.OperationResult>) { import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let publishCallback: (err: BusinessError, result: Array<dataShare.OperationResult>) => void = (err: BusinessError, result: Array<dataShare.OperationResult>): void => {
console.info("publishCallback " + JSON.stringify(result)); console.info("publishCallback " + JSON.stringify(result));
} }
let dataArray : Array<dataShare.PublishedItem> = [ let dataArray : Array<dataShare.PublishedItem> = [
...@@ -641,11 +670,12 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -641,11 +670,12 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
**Example** **Example**
```ts ```ts
let dataArray : Array<dataShare.PublishedItem> = [ let dataShareHelper: dataShare.DataShareHelper;
let dataArray: Array<dataShare.PublishedItem> = [
{key:"city", subscriberId:"11", data:"xian"}, {key:"city", subscriberId:"11", data:"xian"},
{key:"datashareproxy://com.acts.ohos.data.datasharetest/appInfo", subscriberId:"11", data:"appinfo is just a test app"}, {key:"datashareproxy://com.acts.ohos.data.datasharetest/appInfo", subscriberId:"11", data:"appinfo is just a test app"},
{key:"empty", subscriberId:"11", data:"nobody sub"}]; {key:"empty", subscriberId:"11", data:"nobody sub"}];
let result: Array<dataShare.OperationResult> = dataShareHelper.publish(dataArray, "com.acts.ohos.data.datasharetest"); let result: Promise<Array<dataShare.OperationResult>> = dataShareHelper.publish(dataArray, "com.acts.ohos.data.datasharetest");
``` ```
### getPublishedData<sup>10+</sup> ### getPublishedData<sup>10+</sup>
...@@ -674,7 +704,10 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -674,7 +704,10 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
**Example** **Example**
```ts ```ts
function publishCallback(err, data: Array<dataShare.PublishedItem>) { import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let publishCallback: (err: BusinessError, data: Array<dataShare.PublishedItem>) => void = (err: BusinessError, result: Array<dataShare.PublishedItem>): void => {
console.info("**** Observer publish callback ****"); console.info("**** Observer publish callback ****");
} }
dataShareHelper.getPublishedData("com.acts.ohos.data.datasharetest", publishCallback); dataShareHelper.getPublishedData("com.acts.ohos.data.datasharetest", publishCallback);
...@@ -711,7 +744,8 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err ...@@ -711,7 +744,8 @@ For details about the error codes, see [DataShare Error Codes](../errorcodes/err
**Example** **Example**
```ts ```ts
let publishedData:Array<dataShare.PublishedItem> = dataShareHelper.getPublishedData("com.acts.ohos.data.datasharetest"); let dataShareHelper: dataShare.DataShareHelper;
let publishedData: Promise<Array<dataShare.PublishedItem>> = dataShareHelper.getPublishedData("com.acts.ohos.data.datasharetest");
``` ```
### insert ### insert
...@@ -733,11 +767,20 @@ Inserts a single data record into the database. This API uses an asynchronous ca ...@@ -733,11 +767,20 @@ Inserts a single data record into the database. This API uses an asynchronous ca
**Example** **Example**
```ts ```ts
import { ValuesBucket } from '@ohos.data.ValuesBucket'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
const valueBucket = { let key1: string = "name";
"name": "rose", let value1: string = "rose";
"age": 22, let key2: string = "age";
"salary": 200.5, let value2: number = 22;
let key3: string = "salary";
let value3: number = 200.5;
const valueBucket: ValuesBucket = {
key1: value1,
key2: value2,
key3: value3,
} }
try { try {
dataShareHelper.insert(uri, valueBucket, (err, data) => { dataShareHelper.insert(uri, valueBucket, (err, data) => {
...@@ -776,16 +819,26 @@ Inserts a single data record into the database. This API uses a promise to retur ...@@ -776,16 +819,26 @@ Inserts a single data record into the database. This API uses a promise to retur
**Example** **Example**
```ts ```ts
import { BusinessError } from '@ohos.base'
import { ValuesBucket } from '@ohos.data.ValuesBucket'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
const valueBucket = { let key1: string = "name";
"name": "rose1", let value1: string = "rose1";
"age": 221, let key2: string = "age";
"salary": 20.5, let value2: number = 21;
let key3: string = "salary";
let value3: number = 20.5;
const valueBucket: ValuesBucket = {
key1: value1,
key2: value2,
key3: value3,
} }
try { try {
dataShareHelper.insert(uri, valueBucket).then((data) => { dataShareHelper.insert(uri, valueBucket).then((data: number) => {
console.info("insert succeed, data : " + data); console.info("insert succeed, data : " + data);
}). catch((err) => { }). catch((err: BusinessError) => {
console.error(`insert error: code: ${err.code}, message: ${err.message} `); console.error(`insert error: code: ${err.code}, message: ${err.message} `);
}); });
} catch (err) { } catch (err) {
...@@ -814,6 +867,7 @@ Deletes one or more data records from the database. This API uses an asynchronou ...@@ -814,6 +867,7 @@ Deletes one or more data records from the database. This API uses an asynchronou
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let da = new dataSharePredicates.DataSharePredicates(); let da = new dataSharePredicates.DataSharePredicates();
da.equalTo("name", "ZhangSan"); da.equalTo("name", "ZhangSan");
...@@ -855,14 +909,16 @@ Deletes one or more data records from the database. This API uses a promise to r ...@@ -855,14 +909,16 @@ Deletes one or more data records from the database. This API uses a promise to r
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let da = new dataSharePredicates.DataSharePredicates(); let da = new dataSharePredicates.DataSharePredicates();
da.equalTo("name", "ZhangSan"); da.equalTo("name", "ZhangSan");
try { try {
dataShareHelper.delete(uri, da).then((data) => { dataShareHelper.delete(uri, da).then((data: number) => {
console.info("delete succeed, data : " + data); console.info("delete succeed, data : " + data);
}). catch((err) => { }). catch((err: BusinessError) => {
console.error(`delete error: code: ${err.code}, message: ${err.message} `); console.error(`delete error: code: ${err.code}, message: ${err.message} `);
}); });
} catch (err) { } catch (err) {
...@@ -892,6 +948,7 @@ Queries data in the database. This API uses an asynchronous callback to return t ...@@ -892,6 +948,7 @@ Queries data in the database. This API uses an asynchronous callback to return t
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let columns = ["*"]; let columns = ["*"];
let da = new dataSharePredicates.DataSharePredicates(); let da = new dataSharePredicates.DataSharePredicates();
...@@ -935,15 +992,17 @@ Queries data in the database. This API uses a promise to return the result. ...@@ -935,15 +992,17 @@ Queries data in the database. This API uses a promise to return the result.
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let columns = ["*"]; let columns = ["*"];
let da = new dataSharePredicates.DataSharePredicates(); let da = new dataSharePredicates.DataSharePredicates();
da.equalTo("name", "ZhangSan"); da.equalTo("name", "ZhangSan");
try { try {
dataShareHelper.query(uri, da, columns).then((data) => { dataShareHelper.query(uri, da, columns).then((data: DataShareResultSet) => {
console.info("query succeed, rowCount : " + data.rowCount); console.info("query succeed, rowCount : " + data.rowCount);
}). catch((err) => { }). catch((err: BusinessError) => {
console.error(`query error: code: ${err.code}, message: ${err.message} `); console.error(`query error: code: ${err.code}, message: ${err.message} `);
}); });
} catch (err) { } catch (err) {
...@@ -972,15 +1031,22 @@ Updates data in the database. This API uses an asynchronous callback to return t ...@@ -972,15 +1031,22 @@ Updates data in the database. This API uses an asynchronous callback to return t
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
import { ValuesBucket } from '@ohos.data.ValuesBucket'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let da = new dataSharePredicates.DataSharePredicates(); let da = new dataSharePredicates.DataSharePredicates();
da.equalTo("name", "ZhangSan"); da.equalTo("name", "ZhangSan");
const va = { let key1: string = "name";
"name": "roe1", let value1: string = "roe1"
"age": 21, let key2: string = "age";
"salary": 20.5, let value2: number = 21
let key3: string = "salary";
let value3: number = 20.5;
const va: ValuesBucket = {
key1: value1,
key2: value2,
key3: value3,
} }
try { try {
dataShareHelper.update(uri, da, va, (err, data) => { dataShareHelper.update(uri, da, va, (err, data) => {
...@@ -1021,20 +1087,28 @@ Updates data in the database. This API uses a promise to return the result. ...@@ -1021,20 +1087,28 @@ Updates data in the database. This API uses a promise to return the result.
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
import { ValuesBucket } from '@ohos.data.ValuesBucket'
import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let da = new dataSharePredicates.DataSharePredicates(); let da = new dataSharePredicates.DataSharePredicates();
da.equalTo("name", "ZhangSan"); da.equalTo("name", "ZhangSan");
const va = { let key1: string = "name";
"name": "roe1", let value1: string = "roe1"
"age": 21, let key2: string = "age";
"salary": 20.5, let value2: number = 21
let key3: string = "salary";
let value3: number = 20.5;
const va: ValuesBucket = {
key1: value1,
key2: value2,
key3: value3,
} }
try { try {
dataShareHelper.update(uri, da, va).then((data) => { dataShareHelper.update(uri, da, va).then((data: number) => {
console.info("update succeed, data : " + data); console.info("update succeed, data : " + data);
}). catch((err) => { }). catch((err: BusinessError) => {
console.error(`update error: code: ${err.code}, message: ${err.message} `); console.error(`update error: code: ${err.code}, message: ${err.message} `);
}); });
} catch (err) { } catch (err) {
...@@ -1061,10 +1135,22 @@ Batch inserts data into the database. This API uses an asynchronous callback to ...@@ -1061,10 +1135,22 @@ Batch inserts data into the database. This API uses an asynchronous callback to
**Example** **Example**
```ts ```ts
import { ValuesBucket } from '@ohos.data.ValuesBucket'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let vbs = new Array({"name": "roe11", "age": 21, "salary": 20.5,}, let key1: string = "name";
{"name": "roe12", "age": 21, "salary": 20.5,}, let value11: string = "roe11"
{"name": "roe13", "age": 21, "salary": 20.5,}) let key2: string = "age";
let value21: number = 21;
let key3: string = "salary";
let value31: number = 20.5;
let valuesBucket1: ValuesBucket = {
key1: value11,
key2: value21,
key3: value31,
}
let vbs = new Array(valuesBucket1);
try { try {
dataShareHelper.batchInsert(uri, vbs, (err, data) => { dataShareHelper.batchInsert(uri, vbs, (err, data) => {
if (err !== undefined) { if (err !== undefined) {
...@@ -1102,14 +1188,27 @@ Batch inserts data into the database. This API uses a promise to return the resu ...@@ -1102,14 +1188,27 @@ Batch inserts data into the database. This API uses a promise to return the resu
**Example** **Example**
```ts ```ts
import { ValuesBucket } from '@ohos.data.ValuesBucket'
import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
let vbs = new Array({"name": "roe11", "age": 21, "salary": 20.5,}, let key1: string = "name";
{"name": "roe12", "age": 21, "salary": 20.5,}, let value11: string = "roe11"
{"name": "roe13", "age": 21, "salary": 20.5,}) let key2: string = "age";
let value21: number = 21;
let key3: string = "salary";
let value31: number = 20.5;
let valuesBucket1: ValuesBucket = {
key1: value11,
key2: value21,
key3: value31,
}
let vbs = new Array(valuesBucket1);
try { try {
dataShareHelper.batchInsert(uri, vbs).then((data) => { dataShareHelper.batchInsert(uri, vbs).then((data: number) => {
console.info("batchInsert succeed, data : " + data); console.info("batchInsert succeed, data : " + data);
}). catch((err) => { }). catch((err: BusinessError) => {
console.error(`batchInsert error: code: ${err.code}, message: ${err.message} `); console.error(`batchInsert error: code: ${err.code}, message: ${err.message} `);
}); });
} catch (err) { } catch (err) {
...@@ -1135,6 +1234,7 @@ Normalizes a **DataShare** URI. The **DataShare** URI can be used only by the lo ...@@ -1135,6 +1234,7 @@ Normalizes a **DataShare** URI. The **DataShare** URI can be used only by the lo
**Example** **Example**
```ts ```ts
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
dataShareHelper.normalizeUri(uri, (err, data) => { dataShareHelper.normalizeUri(uri, (err, data) => {
if (err !== undefined) { if (err !== undefined) {
...@@ -1168,10 +1268,13 @@ Normalizes a **DataShare** URI. The **DataShare** URI can be used only by the lo ...@@ -1168,10 +1268,13 @@ Normalizes a **DataShare** URI. The **DataShare** URI can be used only by the lo
**Example** **Example**
```ts ```ts
import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
dataShareHelper.normalizeUri(uri).then((data) => { dataShareHelper.normalizeUri(uri).then((data: string) => {
console.info("normalizeUri = " + data); console.info("normalizeUri = " + data);
}).catch((err) => { }).catch((err: BusinessError) => {
console.info("normalizeUri failed, error message : " + err); console.info("normalizeUri failed, error message : " + err);
}); });
``` ```
...@@ -1194,6 +1297,7 @@ Denormalizes a URI. This API uses an asynchronous callback to return the result. ...@@ -1194,6 +1297,7 @@ Denormalizes a URI. This API uses an asynchronous callback to return the result.
**Example** **Example**
```ts ```ts
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
dataShareHelper.denormalizeUri(uri, (err, data) => { dataShareHelper.denormalizeUri(uri, (err, data) => {
if (err !== undefined) { if (err !== undefined) {
...@@ -1227,10 +1331,13 @@ Denormalizes a URI. This API uses a promise to return the result. Silent access ...@@ -1227,10 +1331,13 @@ Denormalizes a URI. This API uses a promise to return the result. Silent access
**Example** **Example**
```ts ```ts
import { BusinessError } from '@ohos.base'
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
dataShareHelper.denormalizeUri(uri).then((data) => { dataShareHelper.denormalizeUri(uri).then((data: string) => {
console.info("denormalizeUri = " + data); console.info("denormalizeUri = " + data);
}).catch((err) => { }).catch((err: BusinessError) => {
console.error("denormalizeUri failed, error message : " + err); console.error("denormalizeUri failed, error message : " + err);
}); });
``` ```
...@@ -1253,6 +1360,7 @@ Notifies the registered observer of data changes. This API uses an asynchronous ...@@ -1253,6 +1360,7 @@ Notifies the registered observer of data changes. This API uses an asynchronous
**Example** **Example**
```ts ```ts
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
dataShareHelper.notifyChange(uri, () => { dataShareHelper.notifyChange(uri, () => {
console.info("***** notifyChange *****"); console.info("***** notifyChange *****");
...@@ -1282,6 +1390,7 @@ Notifies the registered observer of data changes. This API uses a promise to ret ...@@ -1282,6 +1390,7 @@ Notifies the registered observer of data changes. This API uses a promise to ret
**Example** **Example**
```ts ```ts
let dataShareHelper: dataShare.DataShareHelper;
let uri = ("datashare:///com.samples.datasharetest.DataShare"); let uri = ("datashare:///com.samples.datasharetest.DataShare");
dataShareHelper.notifyChange(uri); dataShareHelper.notifyChange(uri);
``` ```
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册