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<!--code_no_check_fa-->
28```ts
29import ability from '@ohos.ability.ability';
30import featureAbility from '@ohos.ability.featureAbility';
31import rdb from '@ohos.data.rdb';
32import { BusinessError } from '@ohos.base';
33
34// 批量执行数据库操作
35function executeBatchOperation() {
36    let dataAbilityUri = ('dataability:///com.example.myapplication.TestDataAbility');
37    let DAHelper: ability.DataAbilityHelper;
38    DAHelper = featureAbility.acquireDataAbilityHelper(dataAbilityUri);
39
40    let valueBucket: rdb.ValuesBucket = {
41        'name': 'DataAbilityHelperTest',
42        'age': 24,
43        'salary': 2024.20,
44    };
45    let predicateBackReferences = new Map<number, number>()
46    predicateBackReferences.set(1, 1)
47
48    let operations: Array<ability.DataAbilityOperation> = [
49        {
50            uri: dataAbilityUri,
51            type: featureAbility.DataAbilityOperationType.TYPE_INSERT,
52            valuesBucket: valueBucket,
53            expectedCount: 1,
54            predicatesBackReferences: predicateBackReferences,
55            interrupted: true,
56        },
57        {
58            uri: dataAbilityUri,
59            type: featureAbility.DataAbilityOperationType.TYPE_INSERT,
60            valuesBucket: valueBucket,
61            expectedCount: 1,
62            predicatesBackReferences: predicateBackReferences,
63            interrupted: true,
64        }
65    ];
66    try {
67        DAHelper.executeBatch(dataAbilityUri, operations).then((data) => {
68            for (let i = 0; i < data.length; i++) {
69                let dataAbilityResult: ability.DataAbilityResult = data[i];
70                console.log(`dataAbilityResult.uri: ${dataAbilityResult.uri}`);
71                console.log(`dataAbilityResult.count: ${dataAbilityResult.count}`);
72            }
73        }).catch((err: BusinessError) => {
74            console.error(`executeBatch error: ${JSON.stringify(err)}`);
75        });
76    } catch (err) {
77        console.error(`executeBatch error: ${JSON.stringify(err as BusinessError)}`);
78    }
79}
80```