1# DataAbilityOperation 2 3The **DataAbilityOperation** module defines the operation on DataAbilities. It can be used as an input parameter of [executeBatch](js-apis-inner-ability-dataAbilityHelper.md#dataabilityhelperexecutebatch) to specify the database operation information. 4 5> **NOTE** 6> 7> The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version. 8> The APIs of this module can be used only in the FA model. 9 10## Modules to Import 11 12```ts 13import ability from '@ohos.ability.ability'; 14``` 15 16## Attributes 17 18**System capability**: SystemCapability.Ability.AbilityRuntime.FAModel 19 20| Name | Template | Read Only| Optional | Description | 21| --------- | -------- |-----| ------| ---------- | 22| uri | string | No | No | URI of the DataAbility. Example: 'dataability:///com.example.xxx.xxxx'. | 23| type | [featureAbility.DataAbilityOperationType](js-apis-ability-featureAbility.md#dataabilityoperationtype7) | No | No | Operation type. | 24| valuesBucket | [rdb.ValuesBucket](../apis-arkdata/js-apis-data-relationalStore.md#valuesbucket) | No | Yes | Data value to set. | 25| valueBackReferences | [rdb.ValuesBucket](../apis-arkdata/js-apis-data-relationalStore.md#valuesbucket) | No | Yes | **ValuesBucket** object that contains a set of key-value pairs. | 26| predicates | [dataAbility.DataAbilityPredicates](../apis-arkdata/js-apis-data-ability.md#dataabilitypredicates) | No | Yes | Predicates to set. If no predicate is set, all data records are displayed. | 27| predicatesBackReferences | Map\<number, number> | No | Yes | Back references of the predicates. | 28| interrupted | boolean | No | Yes | Whether batch operations can be interrupted. | 29| expectedCount | number | No | Yes | Expected number of rows to be updated or deleted. | 30