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