• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# DataAbilityResult
2
3定义DataAbility数据操作结果,通过[executeBatch](js-apis-inner-ability-dataAbilityHelper.md#dataabilityhelperexecutebatch)操作数据库时,操作结果使用DataAbilityResult对象返回。
4
5> **说明:**
6>
7> 本接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8> 本接口仅可在FA模型下使用
9
10## 导入模块
11
12```ts
13import ability from '@ohos.ability.ability';
14```
15
16## 属性
17
18**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.FAModel
19
20| 名称       | 类型  |     必填    |       说明   |
21| --------  | --------  | --------    | --------    |
22| uri?      | string    |      否    | 指示待处理的DataAbility。例:'dataability:///com.example.xxx.xxxx'。  |
23| count?     | number    |      否    | 指示受操作影响的数据数量。  |
24
25**示例:**
26
27```ts
28import ability from '@ohos.ability.ability';
29import featureAbility from '@ohos.ability.featureAbility';
30import rdb from '@ohos.data.rdb';
31
32// 批量执行数据库操作
33function executeBatchOperation() {
34    let dataAbilityUri = ('dataability:///com.example.myapplication.TestDataAbility');
35    let DAHelper: ability.DataAbilityHelper;
36    DAHelper = featureAbility.acquireDataAbilityHelper(dataAbilityUri);
37
38    let valueBucket: rdb.ValuesBucket = {
39        'name': 'DataAbilityHelperTest',
40        'age': 24,
41        'salary': 2024.20,
42    };
43    let predicateBackReferences = new Map<number, number>()
44    predicateBackReferences.set(1, 1)
45
46    let operations: Array<ability.DataAbilityOperation> = [
47        {
48            uri: dataAbilityUri,
49            type: featureAbility.DataAbilityOperationType.TYPE_INSERT,
50            valuesBucket: valueBucket,
51            expectedCount: 1,
52            predicatesBackReferences: predicateBackReferences,
53            interrupted: true,
54        },
55        {
56            uri: dataAbilityUri,
57            type: featureAbility.DataAbilityOperationType.TYPE_INSERT,
58            valuesBucket: valueBucket,
59            expectedCount: 1,
60            predicatesBackReferences: predicateBackReferences,
61            interrupted: true,
62        }
63    ];
64    try {
65        DAHelper.executeBatch(dataAbilityUri, operations).then((data) => {
66            for (let i = 0; i < data.length; i++) {
67                let dataAbilityResult: ability.DataAbilityResult = data[i];
68                console.log('dataAbilityResult.uri: ${dataAbilityResult.uri}');
69                console.log('dataAbilityResult.count: ${dataAbilityResult.count}');
70            }
71        }).catch((err: BusinessError) => {
72            console.error(`executeBatch error: ${JSON.stringify(err)}`);
73        });
74    } catch (err) {
75        console.error(`executeBatch error: ${JSON.stringify(err)}`);
76    }
77}
78```