1# DataAbilityHelper 2 3可以通过[acquireDataAbilityHelper](js-apis-ability-featureAbility.md#featureabilityacquiredataabilityhelper7)接口获取DataAbilityHelper对象。 4 5> **说明:** 6> 7> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> 除了[PacMap](js-apis-inner-ability-dataAbilityHelper.md#pacmap),本模块接口仅可在FA模型下使用。 10 11## 导入模块 12 13```ts 14import ability from '@ohos.ability.ability'; 15``` 16 17## 使用说明 18 19使用前根据具体情况引入如下模块 20```ts 21import ohos_data_ability from '@ohos.data.dataAbility'; 22import relationalStore from '@ohos.data.relationalStore'; 23``` 24 25## DataAbilityHelper.openFile 26 27openFile(uri: string, mode: string, callback: AsyncCallback\<number>): void 28 29打开指定uri对应的文件,返回文件描述符。使用callback异步回调。 30 31**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 32 33**模型约束**:此接口仅可在FA模型下使用。 34 35**参数:** 36 37| 参数名 | 类型 | 必填 | 说明 | 38| -------- | ---------------------- | ---- | ---------------------------------- | 39| uri | string | 是 | 表示待打开文件的uri。 | 40| mode | string | 是 | 表示文件打开模式,可以设置为‘r’表示只读访问,‘w’表示只写访问,‘rw’表示读写访问等。 | 41| callback | AsyncCallback\<number> | 是 | 回调函数,返回文件描述符。 | 42 43**示例:** 44 45<!--code_no_check_fa--> 46```ts 47import ability from '@ohos.ability.ability'; 48import featureAbility from '@ohos.ability.featureAbility'; 49 50let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 51 'dataability:///com.example.DataAbility' 52); 53let mode = 'rw'; 54DAHelper.openFile('dataability:///com.example.DataAbility', mode, (error, data) => { 55 if (error && error.code !== 0) { 56 console.error(`openFile fail, error: ${JSON.stringify(error)}`); 57 } else { 58 console.log(`openFile success, data: ${JSON.stringify(data)}`); 59 } 60}); 61``` 62 63## DataAbilityHelper.openFile 64 65openFile(uri: string, mode: string): Promise\<number> 66 67打开指定uri对应的文件,返回文件描述符。使用Promise异步回调。 68 69**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 70 71**模型约束**:此接口仅可在FA模型下使用。 72 73**参数:** 74 75| 参数名 | 类型 | 必填 | 说明 | 76| ---- | ------ | ---- | ------------------------ | 77| uri | string | 是 | 表示待打开文件的uri。 | 78| mode | string | 是 | 表示文件打开模式,可以设置为‘r’表示只读访问,‘w’表示只写访问,‘rw’表示读写访问等。 | 79 80**返回值:** 81 82| 类型 | 说明 | 83| ---------------- | ---------------- | 84| Promise\<number> | Promise对象,返回文件说明符。 | 85 86**示例:** 87 88<!--code_no_check_fa--> 89```ts 90import ability from '@ohos.ability.ability'; 91import featureAbility from '@ohos.ability.featureAbility'; 92 93let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 94 'dataability:///com.example.DataAbility' 95); 96let mode = 'rw'; 97DAHelper.openFile('dataability:///com.example.DataAbility', mode).then((data) => { 98 console.info(`openFile data: ${JSON.stringify(data)}`); 99}); 100``` 101 102## DataAbilityHelper.on('dataChange') 103 104on(type: 'dataChange', uri: string, callback: AsyncCallback\<void>): void 105 106注册观察者以监听uri指定数据的数据变化通知。使用callback异步回调。 107 108**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 109 110**模型约束**:此接口仅可在FA模型下使用。 111 112**参数:** 113 114| 参数名 | 类型 | 必填 | 说明 | 115| -------- | -------------------- | ---- | ------------------------ | 116| type | string | 是 | 表示监听操作类型,'dataChange'表示数据变化操作。 | 117| uri | string | 是 | 表示待监听数据变化的uri。 | 118| callback | AsyncCallback\<void> | 是 | 回调函数。当注册观察者以监听uri指定数据的数据变化通知成功,err为undefined,否则为错误对象。 | 119 120**示例:** 121 122<!--code_no_check_fa--> 123```ts 124import ability from '@ohos.ability.ability'; 125import featureAbility from '@ohos.ability.featureAbility'; 126 127let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 128 'dataability:///com.example.DataAbility' 129); 130function onChangeNotify() { 131 console.info('onChangeNotify call back'); 132}; 133DAHelper.on( 134 'dataChange', 135 'dataability:///com.example.DataAbility', 136 onChangeNotify 137); 138``` 139 140## DataAbilityHelper.off('dataChange') 141 142off(type: 'dataChange', uri: string, callback?: AsyncCallback\<void>): void 143 144注销观察者以停止监听uri指定数据的数据变化通知。使用callback异步回调。 145 146**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 147 148**模型约束**:此接口仅可在FA模型下使用。 149 150**参数:** 151 152| 参数名 | 类型 | 必填 | 说明 | 153| -------- | -------------------- | ---- | ------------------------ | 154| type | string | 是 | 表示监听操作类型,'dataChange'表示数据变化操作。 | 155| uri | string | 是 | 表示待取消监听数据变化的uri。 | 156| callback | AsyncCallback\<void> | 否 | 回调函数。当注销观察者以停止监听uri指定数据的数据变化通知成功,err为undefined,否则为错误对象。 | 157 158**示例:** 159 160<!--code_no_check_fa--> 161```ts 162import ability from '@ohos.ability.ability'; 163import featureAbility from '@ohos.ability.featureAbility'; 164 165let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 166 'dataability:///com.example.DataAbility' 167); 168function onChangeNotify() { 169 console.info('onChangeNotify call back'); 170}; 171DAHelper.off( 172 'dataChange', 173 'dataability:///com.example.DataAbility', 174 onChangeNotify 175); 176DAHelper.off( 177 'dataChange', 178 'dataability:///com.example.DataAbility', 179); 180``` 181 182## DataAbilityHelper.getType 183 184getType(uri: string, callback: AsyncCallback\<string>): void 185 186获取给定uri指向数据的媒体资源类型。使用callback异步回调。 187 188**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 189 190**模型约束**:此接口仅可在FA模型下使用。 191 192**参数:** 193 194| 参数名 | 类型 | 必填 | 说明 | 195| -------- | ---------------------- | ---- | --------------------------------------------- | 196| uri | string | 是 | 表示待获取数据的uri。 | 197| callback | AsyncCallback\<string> | 是 | 回调函数,返回与uri指向数据匹配的媒体资源类型。 | 198 199**示例:** 200 201<!--code_no_check_fa--> 202```ts 203import ability from '@ohos.ability.ability'; 204import featureAbility from '@ohos.ability.featureAbility'; 205 206let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 207 'dataability:///com.example.DataAbility' 208); 209DAHelper.getType('dataability:///com.example.DataAbility', (error, data) => { 210 if (error && error.code !== 0) { 211 console.error(`getType fail, error: ${JSON.stringify(error)}`); 212 } else { 213 console.log(`getType success, data: ${JSON.stringify(data)}`); 214 } 215}); 216``` 217 218## DataAbilityHelper.getType 219 220getType(uri: string): Promise\<string> 221 222获取给定uri指向数据的媒体资源类型。使用Promise异步回调。 223 224**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 225 226**模型约束**:此接口仅可在FA模型下使用。 227 228**参数:** 229 230| 参数名 | 类型 | 必填 | 说明 | 231| ---- | ------ | ---- | ------------------------ | 232| uri | string | 是 | 表示待获取数据的uri。 | 233 234**返回值:** 235 236| 类型 | 说明 | 237| ---------------- | ----------------------------------- | 238| Promise\<string> | Promise对象,返回与uri指向数据匹配的媒体资源类型。 | 239 240**示例:** 241 242<!--code_no_check_fa--> 243```ts 244import ability from '@ohos.ability.ability'; 245import featureAbility from '@ohos.ability.featureAbility'; 246 247let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 248 'dataability:///com.example.DataAbility' 249); 250DAHelper.getType('dataability:///com.example.DataAbility').then((data) => { 251 console.info(`getType data: ${JSON.stringify(data)}`); 252}); 253``` 254 255## DataAbilityHelper.getFileTypes 256 257getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback<Array\<string>>): void 258 259获取支持的文件媒体资源类型。使用callback异步回调。 260 261**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 262 263**模型约束**:此接口仅可在FA模型下使用。 264 265**参数:** 266 267| 参数名 | 类型 | 必填 | 说明 | 268| -------------- | ------------------------------ | ---- | ---------------------------------- | 269| uri | string | 是 | 表示待获取文件的uri。 | 270| mimeTypeFilter | string | 是 | 表示待获取文件的媒体资源类型。 | 271| callback | AsyncCallback\<Array\<string>> | 是 | 回调函数,返回匹配的媒体资源类型数组。 | 272 273**示例:** 274 275<!--code_no_check_fa--> 276```ts 277import ability from '@ohos.ability.ability'; 278import featureAbility from '@ohos.ability.featureAbility'; 279 280let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 281 'dataability:///com.example.DataAbility' 282); 283DAHelper.getFileTypes( 'dataability:///com.example.DataAbility', 'image/*', (error, data) => { 284 if (error && error.code !== 0) { 285 console.error(`getFileTypes fail, error: ${JSON.stringify(error)}`); 286 } else { 287 console.log(`getFileTypes success, data: ${JSON.stringify(data)}`); 288 } 289}); 290``` 291 292## DataAbilityHelper.getFileTypes 293 294getFileTypes(uri: string, mimeTypeFilter: string): Promise\<Array\<string>> 295 296获取支持的文件媒体资源类型。使用Promise异步回调。 297 298**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 299 300**模型约束**:此接口仅可在FA模型下使用。 301 302**参数:** 303 304| 参数名 | 类型 | 必填 | 说明 | 305| -------------- | ------ | ---- | ---------------------------- | 306| uri | string | 是 | 表示待获取文件的uri。 | 307| mimeTypeFilter | string | 是 | 表示待获取文件的媒体资源类型。 | 308 309**返回值:** 310 311| 类型 | 说明 | 312| ------------------------ | ------------------------ | 313| Promise\<Array\<string>> | Promise对象,返回匹配的媒体资源类型数组。 | 314 315**示例:** 316 317<!--code_no_check_fa--> 318```ts 319import ability from '@ohos.ability.ability'; 320import featureAbility from '@ohos.ability.featureAbility'; 321 322let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 323 'dataability:///com.example.DataAbility' 324); 325DAHelper.getFileTypes('dataability:///com.example.DataAbility', 'image/*').then((data) => { 326 console.info(`getFileTypes data: ${JSON.stringify(data)}`); 327}); 328``` 329 330## DataAbilityHelper.normalizeUri 331 332normalizeUri(uri: string, callback: AsyncCallback\<string>): void 333 334将引用数据功能的给定uri转换为规范化uri。使用callback异步回调。 335 336**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 337 338**模型约束**:此接口仅可在FA模型下使用。 339 340**参数:** 341 342| 参数名 | 类型 | 必填 | 说明 | 343| -------- | ---------------------- | ---- | ------------------------------------------------------------ | 344| uri | string | 是 | 表示要规范化的uri对象。 | 345| callback | AsyncCallback\<string> | 是 | 回调函数,如果数据功能支持uri规范化,则返回规范化uri对象;否则返回null。 | 346 347**示例:** 348 349<!--code_no_check_fa--> 350```ts 351import ability from '@ohos.ability.ability'; 352import featureAbility from '@ohos.ability.featureAbility'; 353 354let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 355 'dataability:///com.example.DataAbility' 356); 357DAHelper.normalizeUri('dataability:///com.example.DataAbility', (error, data) => { 358 if (error && error.code !== 0) { 359 console.error(`normalizeUri fail, error: ${JSON.stringify(error)}`); 360 } else { 361 console.log(`normalizeUri success, data: ${JSON.stringify(data)}`); 362 } 363}); 364``` 365 366## DataAbilityHelper.normalizeUri 367 368normalizeUri(uri: string): Promise\<string> 369 370将引用数据功能的给定uri转换为规范化uri。使用Promise异步回调。 371 372**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 373 374**模型约束**:此接口仅可在FA模型下使用。 375 376**参数:** 377 378| 参数名 | 类型 | 必填 | 说明 | 379| ---- | ------ | ---- | ----------------------- | 380| uri | string | 是 | 表示要规范化的uri对象。 | 381 382**返回值:** 383 384| 类型 | 说明 | 385| ---------------- | ------------------------------------------------------ | 386| Promise\<string> | Promise对象,如果数据功能支持uri规范化,则返回规范化uri对象;否则返回null。 | 387 388**示例:** 389 390<!--code_no_check_fa--> 391```ts 392import ability from '@ohos.ability.ability'; 393import featureAbility from '@ohos.ability.featureAbility'; 394 395let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 396 'dataability:///com.example.DataAbility' 397); 398DAHelper.normalizeUri('dataability:///com.example.DataAbility',).then((data) => { 399 console.info(`normalizeUri data: ${JSON.stringify(data)}`); 400}); 401``` 402 403## DataAbilityHelper.denormalizeUri 404 405denormalizeUri(uri: string, callback: AsyncCallback\<string>): void 406 407将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri。使用callback异步回调。 408 409**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 410 411**模型约束**:此接口仅可在FA模型下使用。 412 413**参数:** 414 415| 参数名 | 类型 | 必填 | 说明 | 416| -------- | ---------------------- | ---- | --------------------------------------------------- | 417| uri | string | 是 | 表示要反规范化的uri对象。 | 418| callback | AsyncCallback\<string> | 是 | 回调函数,返回反规范化uri对象。 | 419 420**示例:** 421 422<!--code_no_check_fa--> 423```ts 424import ability from '@ohos.ability.ability'; 425import featureAbility from '@ohos.ability.featureAbility'; 426 427let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 428 'dataability:///com.example.DataAbility' 429); 430DAHelper.denormalizeUri('dataability:///com.example.DataAbility', (error, data) => { 431 if (error && error.code !== 0) { 432 console.error(`denormalizeUri fail, error: ${JSON.stringify(error)}`); 433 } else { 434 console.log(`denormalizeUri success, data: ${JSON.stringify(data)}`); 435 } 436}); 437``` 438 439## DataAbilityHelper.denormalizeUri 440 441denormalizeUri(uri: string): Promise\<string> 442 443将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri。使用Promise异步回调。 444 445**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 446 447**模型约束**:此接口仅可在FA模型下使用。 448 449**参数:** 450 451| 参数名 | 类型 | 必填 | 说明 | 452| ---- | ------ | ---- | ----------------------- | 453| uri | string | 是 | 表示要规范化的uri对象。 | 454 455**返回值:** 456 457| 类型 | 说明 | 458| ---------------- | ----------------------------------------- | 459| Promise\<string> |Promise对象,返回反规范化uri对象。 | 460 461**示例:** 462 463<!--code_no_check_fa--> 464```ts 465import ability from '@ohos.ability.ability'; 466import featureAbility from '@ohos.ability.featureAbility'; 467 468let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 469 'dataability:///com.example.DataAbility' 470); 471DAHelper.denormalizeUri('dataability:///com.example.DataAbility',).then((data) => { 472 console.info(`denormalizeUri data: ${JSON.stringify(data)}`); 473}); 474``` 475 476## DataAbilityHelper.notifyChange 477 478notifyChange(uri: string, callback: AsyncCallback\<void>): void 479 480通知注册的观察者,uri指定数据的数据变化。使用callback异步回调。 481 482**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 483 484**模型约束**:此接口仅可在FA模型下使用。 485 486**参数:** 487 488| 参数名 | 类型 | 必填 | 说明 | 489| -------- | -------------------- | ---- | ------------------------ | 490| uri | string | 是 | 表示数据变化的uri。 | 491| callback | AsyncCallback\<void> | 是 | 回调函数。当通知注册的观察者成功,err为undefined,否则为错误对象。 | 492 493**示例:** 494 495<!--code_no_check_fa--> 496```ts 497import ability from '@ohos.ability.ability'; 498import featureAbility from '@ohos.ability.featureAbility'; 499 500let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 501 'dataability:///com.example.DataAbility' 502); 503DAHelper.notifyChange('dataability:///com.example.DataAbility', (error) => { 504 if (error && error.code !== 0) { 505 console.error(`notifyChange fail, error: ${JSON.stringify(error)}`); 506 } else { 507 console.log('notifyChange success'); 508 } 509}); 510``` 511 512## DataAbilityHelper.notifyChange 513 514notifyChange(uri: string): Promise\<void> 515 516通知注册的观察者,uri指定数据的数据变化。使用Promise异步回调。 517 518**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 519 520**模型约束**:此接口仅可在FA模型下使用。 521 522**参数:** 523 524| 参数名 | 类型 | 必填 | 说明 | 525| ---- | ------ | ---- | ------------------------ | 526| uri | string | 是 | 表示数据变化的uri。 | 527 528**返回值:** 529 530| 类型 | 说明 | 531| -------------- | --------------------- | 532| Promise\<void> | Promise对象。无返回结果的Promise对象。 | 533 534**示例:** 535 536<!--code_no_check_fa--> 537```ts 538import ability from '@ohos.ability.ability'; 539import featureAbility from '@ohos.ability.featureAbility'; 540 541let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 542 'dataability:///com.example.DataAbility' 543); 544DAHelper.notifyChange('dataability:///com.example.DataAbility').then(() => { 545 console.info('================>notifyChangeCallback================>'); 546}); 547``` 548 549## DataAbilityHelper.insert 550 551insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>): void 552 553将单个数据记录插入数据库。使用callback异步回调。 554 555**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 556 557**模型约束**:此接口仅可在FA模型下使用。 558 559**参数:** 560 561| 参数名 | 类型 | 必填 | 说明 | 562| ------------ | ---------------------- | ---- | ------------------------------------------------------ | 563| uri | string | 是 | 表示要插入数据的uri。 | 564| valuesBucket | rdb.ValuesBucket | 是 | 表示要插入的数据记录。如果此参数为空,将插入一个空行。 | 565| callback | AsyncCallback\<number> | 是 | 回调函数,返回插入数据记录的索引。 | 566 567**示例:** 568 569<!--code_no_check_fa--> 570```ts 571import ability from '@ohos.ability.ability'; 572import featureAbility from '@ohos.ability.featureAbility'; 573import rdb from '@ohos.data.rdb'; 574 575let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 576 'dataability:///com.example.DataAbility' 577); 578const valueBucket: rdb.ValuesBucket = { 579 'name': 'rose', 580 'age': 22, 581 'salary': 200.5, 582 'blobType': 'u8', 583}; 584DAHelper.insert('dataability:///com.example.DataAbility', valueBucket, (error, data) => { 585 if (error && error.code !== 0) { 586 console.error(`insert fail, error: ${JSON.stringify(error)}`); 587 } else { 588 console.log(`insert success, data: ${JSON.stringify(data)}`); 589 } 590}); 591``` 592 593## DataAbilityHelper.insert 594 595insert(uri: string, valuesBucket: rdb.ValuesBucket): Promise\<number> 596 597将单个数据记录插入数据库。使用Promise异步回调。 598 599**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 600 601**模型约束**:此接口仅可在FA模型下使用。 602 603**参数:** 604 605| 参数名 | 类型 | 必填 | 说明 | 606| ------------ | ---------------- | ---- | ------------------------------------------------------ | 607| uri | string | 是 | 表示要插入数据的uri。 | 608| valuesBucket | rdb.ValuesBucket | 是 | 表示要插入的数据记录。如果此参数为空,将插入一个空行。 | 609 610**返回值:** 611 612| 类型 | 说明 | 613| ---------------- | ------------------------ | 614| Promise\<number> | Promise对象,返回插入数据记录的索引。 | 615 616**示例:** 617 618<!--code_no_check_fa--> 619```ts 620import ability from '@ohos.ability.ability'; 621import featureAbility from '@ohos.ability.featureAbility'; 622import rdb from '@ohos.data.rdb'; 623 624let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 625 'dataability:///com.example.DataAbility' 626); 627const valueBucket: rdb.ValuesBucket = { 628 'name': 'rose1', 629 'age': 221, 630 'salary': 20.5, 631 'blobType': 'u8', 632}; 633DAHelper.insert('dataability:///com.example.DataAbility', valueBucket).then((data) => { 634 console.info(`insert data: ${JSON.stringify(data)}`); 635}); 636``` 637 638## DataAbilityHelper.batchInsert 639 640batchInsert(uri: string, valuesBuckets: Array\<rdb.ValuesBucket>, callback: AsyncCallback\<number>): void 641 642将多个数据记录插入数据库。使用callback异步回调。 643 644**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 645 646**模型约束**:此接口仅可在FA模型下使用。 647**参数:** 648 649| 参数名 | 类型 | 必填 | 说明 | 650| ------------ | ----------------------- | ---- | -------------------------------- | 651| uri | string | 是 | 表示要插入数据的uri。 | 652| valuesBuckets | Array\<[rdb.ValuesBucket](../apis-arkdata/js-apis-data-rdb.md#valuesbucket)> | 是 | 表示要插入的数据记录数组。 | 653| callback | AsyncCallback\<number> | 是 | 回调函数,返回插入的数据记录数。 | 654 655**示例:** 656 657<!--code_no_check_fa--> 658```ts 659import ability from '@ohos.ability.ability'; 660import featureAbility from '@ohos.ability.featureAbility'; 661import rdb from '@ohos.data.rdb'; 662 663let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 664 'dataability:///com.example.DataAbility' 665); 666let cars = new Array({'name': 'roe11', 'age': 21, 'salary': 20.5, 'blobType': 'u8',} as rdb.ValuesBucket, 667 {'name': 'roe12', 'age': 21, 'salary': 20.5, 'blobType': 'u8',} as rdb.ValuesBucket, 668 {'name': 'roe13', 'age': 21, 'salary': 20.5, 'blobType': 'u8',} as rdb.ValuesBucket); 669DAHelper.batchInsert('dataability:///com.example.DataAbility', cars, (error, data) => { 670 if (error && error.code !== 0) { 671 console.error(`batchInsert fail, error: ${JSON.stringify(error)}`); 672 } else { 673 console.log(`batchInsert success, data: ${JSON.stringify(data)}`); 674 } 675}); 676``` 677 678## DataAbilityHelper.batchInsert 679 680batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>): Promise\<number> 681 682将多个数据记录插入数据库。使用Promise异步回调。 683 684**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 685 686**模型约束**:此接口仅可在FA模型下使用。 687 688**参数:** 689 690| 参数名 | 类型 | 必填 | 说明 | 691| ------------ | ----------------------- | ---- | ------------------------ | 692| uri | string | 是 | 表示要插入数据的uri。 | 693| valuesBuckets | Array<[rdb.ValuesBucket](../apis-arkdata/js-apis-data-rdb.md#valuesbucket)> | 是 | 表示要插入的数据记录数组。 | 694 695**返回值:** 696 697| 类型 | 说明 | 698| ---------------- | ---------------------- | 699| Promise\<number> | Promise对象,返回插入的数据记录数。 | 700 701**示例:** 702 703<!--code_no_check_fa--> 704```ts 705import ability from '@ohos.ability.ability'; 706import featureAbility from '@ohos.ability.featureAbility'; 707import rdb from '@ohos.data.rdb'; 708 709let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 710 'dataability:///com.example.DataAbility' 711); 712let cars = new Array({'name': 'roe11', 'age': 21, 'salary': 20.5, 'blobType': 'u8',} as rdb.ValuesBucket, 713 {'name': 'roe12', 'age': 21, 'salary': 20.5, 'blobType': 'u8',} as rdb.ValuesBucket, 714 {'name': 'roe13', 'age': 21, 'salary': 20.5, 'blobType': 'u8',} as rdb.ValuesBucket); 715DAHelper.batchInsert('dataability:///com.example.DataAbility', cars).then((data) => { 716 console.info(`batchInsert data: ${JSON.stringify(data)}`); 717}); 718``` 719 720## DataAbilityHelper.delete 721 722delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>): void 723 724从数据库中删除一个或多个数据记录。使用callback异步回调。 725 726**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 727 728**模型约束**:此接口仅可在FA模型下使用。 729 730**参数:** 731 732| 参数名 | 类型 | 必填 | 说明 | 733| ------------ | --------------------------------- | ---- | ------------------------------------------------ | 734| uri | string | 是 | 表示要删除数据的uri。 | 735| predicates | dataAbility.DataAbilityPredicates | 是 | 表示筛选条件。当此参数为null时,应定义处理逻辑。 | 736| callback | AsyncCallback\<number> | 是 | 回调函数,返回已删除的数据记录数。 | 737 738**示例:** 739 740<!--code_no_check_fa--> 741```ts 742import ability from '@ohos.ability.ability'; 743import featureAbility from '@ohos.ability.featureAbility'; 744import ohos_data_ability from '@ohos.data.dataAbility'; 745 746let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 747 'dataability:///com.example.DataAbility' 748); 749let da = new ohos_data_ability.DataAbilityPredicates(); 750DAHelper.delete('dataability:///com.example.DataAbility', da, (error, data) => { 751 if (error && error.code !== 0) { 752 console.error(`delete fail, error: ${JSON.stringify(error)}`); 753 } else { 754 console.log(`delete success, data: ${JSON.stringify(data)}`); 755 } 756}); 757``` 758 759## DataAbilityHelper.delete 760 761delete(uri: string, predicates?: dataAbility.DataAbilityPredicates): Promise\<number> 762 763从数据库中删除一个或多个数据记录。使用Promise异步回调。 764 765**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 766 767**模型约束**:此接口仅可在FA模型下使用。 768 769**参数:** 770 771| 参数名 | 类型 | 必填 | 说明 | 772| ------------ | --------------------------------- | ---- | ------------------------------------------------ | 773| uri | string | 是 | 表示要删除数据的uri。 | 774| predicates | dataAbility.DataAbilityPredicates | 否 | 表示筛选条件。当此参数为null时,应定义处理逻辑。 | 775 776**返回值:** 777 778| 类型 | 说明 | 779| ---------------- | ------------------------ | 780| Promise\<number> | Promise对象,返回已删除的数据记录数。 | 781 782**示例:** 783 784<!--code_no_check_fa--> 785```ts 786import ability from '@ohos.ability.ability'; 787import featureAbility from '@ohos.ability.featureAbility'; 788import ohos_data_ability from '@ohos.data.dataAbility'; 789 790let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 791 'dataability:///com.example.DataAbility' 792); 793let da = new ohos_data_ability.DataAbilityPredicates(); 794DAHelper.delete('dataability:///com.example.DataAbility', da).then((data) => { 795 console.info(`delete data: ${JSON.stringify(data)}`); 796}); 797``` 798 799## DataAbilityHelper.delete 800 801delete(uri: string, callback: AsyncCallback\<number>): void 802 803predicates筛选条件为空,自定义数据库删除数据记录的处理逻辑。使用callback异步回调。 804 805**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 806 807**模型约束**:此接口仅可在FA模型下使用。 808 809**参数:** 810 811| 参数名 | 类型 | 必填 | 说明 | 812| ------------ | --------------------------------- | ---- | ------------------------------------------------ | 813| uri | string | 是 | 表示要删除数据的uri。 | 814| callback | AsyncCallback\<number> | 是 | 回调函数,返回已删除的数据记录数。 | 815 816**示例:** 817 818<!--code_no_check_fa--> 819```ts 820import ability from '@ohos.ability.ability'; 821import featureAbility from '@ohos.ability.featureAbility'; 822 823let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 824 'dataability:///com.example.DataAbility' 825); 826DAHelper.delete('dataability:///com.example.DataAbility', (error, data) => { 827 if (error && error.code !== 0) { 828 console.error(`delete fail, error: ${JSON.stringify(error)}`); 829 } else { 830 console.log(`delete success, data: ${JSON.stringify(data)}`); 831 } 832}); 833``` 834 835## DataAbilityHelper.update 836 837update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>): void 838 839更新数据库中的数据记录。使用callback异步回调。 840 841**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 842 843**模型约束**:此接口仅可在FA模型下使用。 844 845**参数:** 846 847| 参数名 | 类型 | 必填 | 说明 | 848| ------------ | --------------------------------- | ---- | ------------------------------------------------ | 849| uri | string | 是 | 表示要更新数据的uri。 | 850| valuesBucket | rdb.ValuesBucket | 是 | 表示要更新的数据。 | 851| predicates | dataAbility.DataAbilityPredicates | 是 | 表示筛选条件。当此参数为null时,应定义处理逻辑。 | 852| callback | AsyncCallback\<number> | 是 | 回调函数,返回更新的数据记录数。 | 853 854**示例:** 855 856<!--code_no_check_fa--> 857```ts 858import ability from '@ohos.ability.ability'; 859import featureAbility from '@ohos.ability.featureAbility'; 860import ohos_data_ability from '@ohos.data.dataAbility'; 861import rdb from '@ohos.data.rdb'; 862 863let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 864 'dataability:///com.example.DataAbility' 865); 866const va: rdb.ValuesBucket = { 867 'name': 'roe1', 868 'age': 21, 869 'salary': 20.5, 870 'blobType': 'u8', 871}; 872let da = new ohos_data_ability.DataAbilityPredicates(); 873DAHelper.update('dataability:///com.example.DataAbility', va, da, (error, data) => { 874 if (error && error.code !== 0) { 875 console.error(`update fail, error: ${JSON.stringify(error)}`); 876 } else { 877 console.log(`update success, data: ${JSON.stringify(data)}`); 878 } 879}); 880``` 881 882## DataAbilityHelper.update 883 884update(uri: string, valuesBucket: rdb.ValuesBucket, predicates?: dataAbility.DataAbilityPredicates): Promise\<number> 885 886更新数据库中的数据记录。使用Promise异步回调。 887 888**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 889 890**模型约束**:此接口仅可在FA模型下使用。 891 892**参数:** 893 894| 参数名 | 类型 | 必填 | 说明 | 895| ------------ | --------------------------------- | ---- | ------------------------------------------------ | 896| uri | string | 是 | 表示要更新数据的uri。 | 897| valuesBucket | rdb.ValuesBucket | 是 | 表示要更新的数据。 | 898| predicates | dataAbility.DataAbilityPredicates | 否 | 表示筛选条件。当此参数为null时,应定义处理逻辑。 | 899 900**返回值:** 901 902| 类型 | 说明 | 903| ---------------- | -------------------------------------------- | 904| Promise\<number> | Promise对象,返回更新的数据记录数。 | 905 906**示例:** 907 908<!--code_no_check_fa--> 909```ts 910import ability from '@ohos.ability.ability'; 911import featureAbility from '@ohos.ability.featureAbility'; 912import ohos_data_ability from '@ohos.data.dataAbility'; 913import rdb from '@ohos.data.rdb'; 914 915let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 916 'dataability:///com.example.DataAbility' 917); 918const va: rdb.ValuesBucket = { 919 'name': 'roe1', 920 'age': 21, 921 'salary': 20.5, 922 'blobType': 'u8', 923}; 924let da = new ohos_data_ability.DataAbilityPredicates(); 925DAHelper.update('dataability:///com.example.DataAbility', va, da).then((data) => { 926 console.info(`update data: ${JSON.stringify(data)}`); 927}); 928``` 929 930## DataAbilityHelper.update 931 932update(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>): void 933 934predicates筛选条件为空,自定义更新数据库的处理逻辑。使用callback异步回调。 935 936**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 937 938**模型约束**:此接口仅可在FA模型下使用。 939 940**参数:** 941 942| 参数名 | 类型 | 必填 | 说明 | 943| ------------ | --------------------------------- | ---- | ------------------------------------------------ | 944| uri | string | 是 | 表示要更新数据的uri。 | 945| valuesBucket | rdb.ValuesBucket | 是 | 表示要更新的数据。 | 946| callback | AsyncCallback\<number> | 是 | 回调函数,返回更新的数据记录数。 | 947 948**示例:** 949 950<!--code_no_check_fa--> 951```ts 952import ability from '@ohos.ability.ability'; 953import featureAbility from '@ohos.ability.featureAbility'; 954import rdb from '@ohos.data.rdb'; 955 956let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 957 'dataability:///com.example.DataAbility' 958); 959const va: rdb.ValuesBucket = { 960 'name': 'roe1', 961 'age': 21, 962 'salary': 20.5, 963 'blobType': 'u8', 964}; 965DAHelper.update('dataability:///com.example.DataAbility', va, (error, data) => { 966 if (error && error.code !== 0) { 967 console.error(`update fail, error: ${JSON.stringify(error)}`); 968 } else { 969 console.log(`update success, data: ${JSON.stringify(data)}`); 970 } 971}); 972``` 973 974## DataAbilityHelper.query 975 976query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>): void 977 978查询数据库中的数据。使用callback异步回调。 979 980**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 981 982**模型约束**:此接口仅可在FA模型下使用。 983 984**参数:** 985 986| 参数名 | 类型 | 必填 | 说明 | 987| ---------- | --------------------------------- | ---- | ------------------------------------------------ | 988| uri | string | 是 | 表示要查询数据的uri。 | 989| columns | Array\<string> | 是 | 表示要查询的列。如果此参数为空,则查询所有列。 | 990| predicates | dataAbility.DataAbilityPredicates | 是 | 表示筛选条件。当此参数为null时,自定义查询数据库中数据的处理逻辑。 | 991| callback | AsyncCallback\<[ResultSet](../apis-arkdata/js-apis-data-relationalStore.md#resultset)> | 是 | 回调函数,返回查询结果。 | 992 993**示例:** 994 995<!--code_no_check_fa--> 996```ts 997import ability from '@ohos.ability.ability'; 998import featureAbility from '@ohos.ability.featureAbility'; 999import ohos_data_ability from '@ohos.data.dataAbility'; 1000 1001let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1002 'dataability:///com.example.DataAbility' 1003); 1004let cars=new Array('value1', 'value2', 'value3', 'value4'); 1005let da = new ohos_data_ability.DataAbilityPredicates(); 1006DAHelper.query('dataability:///com.example.DataAbility', cars, da, (error, data) => { 1007 if (error && error.code !== 0) { 1008 console.error(`query fail, error: ${JSON.stringify(error)}`); 1009 } else { 1010 console.log(`query success, data: ${JSON.stringify(data)}`); 1011 } 1012}); 1013``` 1014 1015## DataAbilityHelper.query 1016 1017query(uri: string, callback: AsyncCallback\<ResultSet>): void 1018 1019查询数据库中的数据。使用callback异步回调。 1020 1021**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1022 1023**模型约束**:此接口仅可在FA模型下使用。 1024 1025**参数:** 1026 1027| 参数名 | 类型 | 必填 | 说明 | 1028| ---------- | --------------------------------- | ---- | ------------------------------------------------ | 1029| uri | string | 是 | 表示要查询数据的uri。 | 1030| callback | AsyncCallback\<[ResultSet](../apis-arkdata/js-apis-data-relationalStore.md#resultset)> | 是 | 回调函数,返回查询结果。 | 1031 1032**示例:** 1033 1034<!--code_no_check_fa--> 1035```ts 1036import ability from '@ohos.ability.ability'; 1037import featureAbility from '@ohos.ability.featureAbility'; 1038 1039let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1040 'dataability:///com.example.DataAbility' 1041); 1042DAHelper.query('dataability:///com.example.DataAbility', (error, data) => { 1043 if (error && error.code !== 0) { 1044 console.error(`query fail, error: ${JSON.stringify(error)}`); 1045 } else { 1046 console.log(`query success, data: ${JSON.stringify(data)}`); 1047 } 1048}); 1049``` 1050 1051## DataAbilityHelper.query 1052 1053query(uri: string, columns: Array\<string>, callback: AsyncCallback\<ResultSet>): void 1054 1055查询数据库中的数据。使用callback异步回调。 1056 1057**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1058 1059**模型约束**:此接口仅可在FA模型下使用。 1060 1061**参数:** 1062 1063| 参数名 | 类型 | 必填 | 说明 | 1064| ---------- | --------------------------------- | ---- | ------------------------------------------------ | 1065| uri | string | 是 | 表示要查询数据的uri。 | 1066| columns | Array\<string> | 是 | 表示要查询的列。如果此参数为空,则查询所有列。 | 1067| callback | AsyncCallback\<[ResultSet](../apis-arkdata/js-apis-data-relationalStore.md#resultset)> | 是 | 回调函数,返回查询结果。 | 1068 1069**示例:** 1070 1071<!--code_no_check_fa--> 1072```ts 1073import ability from '@ohos.ability.ability'; 1074import featureAbility from '@ohos.ability.featureAbility'; 1075 1076let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1077 'dataability:///com.example.DataAbility' 1078); 1079let cars = new Array('value1', 'value2', 'value3', 'value4'); 1080DAHelper.query('dataability:///com.example.DataAbility', cars, (error, data) => { 1081 if (error && error.code !== 0) { 1082 console.error(`query fail, error: ${JSON.stringify(error)}`); 1083 } else { 1084 console.log(`query success, data: ${JSON.stringify(data)}`); 1085 } 1086}); 1087``` 1088 1089## DataAbilityHelper.query 1090 1091query(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>): void 1092 1093查询数据库中的数据。使用callback异步回调。 1094 1095**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1096 1097**模型约束**:此接口仅可在FA模型下使用。 1098 1099**参数:** 1100 1101| 参数名 | 类型 | 必填 | 说明 | 1102| ---------- | --------------------------------- | ---- | ------------------------------------------------ | 1103| uri | string | 是 | 表示要查询数据的uri。 | 1104| predicates | dataAbility.DataAbilityPredicates | 是 | 表示筛选条件。当此参数为null时,自定义查询数据库中数据的处理逻辑。 | 1105| callback | AsyncCallback\<[ResultSet](../apis-arkdata/js-apis-data-relationalStore.md#resultset)> | 是 | 回调函数,返回查询结果。 | 1106 1107**示例:** 1108 1109<!--code_no_check_fa--> 1110```ts 1111import ability from '@ohos.ability.ability'; 1112import featureAbility from '@ohos.ability.featureAbility'; 1113import ohos_data_ability from '@ohos.data.dataAbility'; 1114 1115let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1116 'dataability:///com.example.DataAbility' 1117); 1118let da = new ohos_data_ability.DataAbilityPredicates(); 1119DAHelper.query('dataability:///com.example.DataAbility', da, (error, data) => { 1120 if (error && error.code !== 0) { 1121 console.error(`query fail, error: ${JSON.stringify(error)}`); 1122 } else { 1123 console.log(`query success, data: ${JSON.stringify(data)}`); 1124 } 1125}); 1126``` 1127 1128## DataAbilityHelper.query 1129 1130query(uri: string, columns?: Array\<string>, predicates?: dataAbility.DataAbilityPredicates): Promise\<ResultSet> 1131 1132查询数据库中的数据。使用Promise异步回调。 1133 1134**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1135 1136**模型约束**:此接口仅可在FA模型下使用。 1137 1138**参数:** 1139 1140| 参数名 | 类型 | 必填 | 说明 | 1141| ---------- | --------------------------------- | ---- | ------------------------------------------------ | 1142| uri | string | 是 | 表示要查询数据的uri。 | 1143| columns | Array\<string> | 否 | 表示要查询的列。如果此参数为空,则查询所有列。 | 1144| predicates | dataAbility.DataAbilityPredicates | 否 | 表示筛选条件。当此参数为null时,自定义查询数据库中数据的处理逻辑。 | 1145 1146**返回值:** 1147 1148| 类型 | 说明 | 1149| ------------------- | -------------- | 1150| Promise\<[ResultSet](../apis-arkdata/js-apis-data-relationalStore.md#resultset)> | Promise对象,返回查询结果。 | 1151 1152**示例:** 1153 1154<!--code_no_check_fa--> 1155```ts 1156import ability from '@ohos.ability.ability'; 1157import featureAbility from '@ohos.ability.featureAbility'; 1158import ohos_data_ability from '@ohos.data.dataAbility'; 1159 1160let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1161 'dataability:///com.example.DataAbility' 1162); 1163let cars = new Array('value1', 'value2', 'value3', 'value4'); 1164let da = new ohos_data_ability.DataAbilityPredicates(); 1165DAHelper.query('dataability:///com.example.DataAbility', cars, da).then((data) => { 1166 console.info(`query data: ${JSON.stringify(data)}`); 1167}); 1168``` 1169 1170## DataAbilityHelper.call 1171 1172call(uri: string, method: string, arg: string, extras: PacMap, callback: AsyncCallback\<PacMap>): void 1173 1174调用DataAbility的扩展接口。使用callback异步回调。 1175 1176**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1177 1178**模型约束**:此接口仅可在FA模型下使用。 1179 1180**参数:** 1181 1182| 参数名 | 类型 | 必填 | 说明 | 1183| ---------- | --------------------------------- | ---- | ------------------------------------------------ | 1184| uri | string | 是 | 表示待处理的DataAbility。例:'dataability:///com.example.xxx.xxxx' | 1185| method | string | 是 | 表示被调用的方法名。 | 1186| arg | string | 是 | 表示需传入的参数。 | 1187| extras | [PacMap](js-apis-inner-ability-dataAbilityHelper.md#pacmap) | 是 | 表示扩展的键值对参数。 | 1188| callback | AsyncCallback\<[PacMap](js-apis-inner-ability-dataAbilityHelper.md#pacmap)> | 是 | 回调函数,返回扩展的键值对参数。 | 1189 1190**示例:** 1191 1192<!--code_no_check_fa--> 1193```ts 1194import ability from '@ohos.ability.ability'; 1195import featureAbility from '@ohos.ability.featureAbility'; 1196 1197let dataAbilityHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1198 'dataability:///com.example.jsapidemo.UserDataAbility' 1199); 1200dataAbilityHelper.call('dataability:///com.example.jsapidemo.UserDataAbility', 1201 'method', 'arg', {'key1':'value1'}, (error, data) => { 1202 if (error && error.code !== 0) { 1203 console.error(`call fail, error: ${JSON.stringify(error)}`); 1204 } else { 1205 console.log(`call success, data: ${JSON.stringify(data)}`); 1206 } 1207}); 1208``` 1209 1210## DataAbilityHelper.call 1211 1212call(uri: string, method: string, arg: string, extras: PacMap): Promise\<PacMap> 1213 1214调用DataAbility的扩展接口。使用Promise异步回调。 1215 1216**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1217 1218**模型约束**:此接口仅可在FA模型下使用。 1219 1220**参数:** 1221 1222| 参数名 | 类型 | 必填 | 说明 | 1223| ---------- | --------------------------------- | ---- | ------------------------------------------------ | 1224| uri | string | 是 | 表示待处理的DataAbility。例:'dataability:///com.example.xxx.xxxx' | 1225| method | string | 是 | 表示被调用的方法名。 | 1226| arg | string | 是 | 表示需传入的参数。 | 1227| extras | [PacMap](js-apis-inner-ability-dataAbilityHelper.md#pacmap) | 是 | 表示扩展的键值对参数。 | 1228 1229**返回值:** 1230 1231| 类型 | 说明 | 1232|------ | ------- | 1233|Promise\<[PacMap](js-apis-inner-ability-dataAbilityHelper.md#pacmap)> | Promise对象,返回扩展的键值对参数。 | 1234 1235**示例:** 1236 1237<!--code_no_check_fa--> 1238```ts 1239import ability from '@ohos.ability.ability'; 1240import featureAbility from '@ohos.ability.featureAbility'; 1241import { BusinessError } from '@ohos.base'; 1242 1243let dataAbilityHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1244 'dataability:///com.example.jsapidemo.UserDataAbility' 1245); 1246dataAbilityHelper.call('dataability:///com.example.jsapidemo.UserDataAbility', 1247 'method', 'arg', {'key1':'value1'}).then((data) => { 1248 console.info('call success, data: ${data}'); 1249}).catch((error: BusinessError) => { 1250 console.error('call failed, error: ${error}'); 1251}); 1252``` 1253 1254## DataAbilityHelper.executeBatch 1255 1256executeBatch(uri: string, operations: Array\<DataAbilityOperation>, callback: AsyncCallback\<Array\<DataAbilityResult>>): void 1257 1258批量操作数据库中的数据。使用callback异步回调。 1259 1260**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1261 1262**模型约束**:此接口仅可在FA模型下使用。 1263 1264**参数:** 1265 1266| 参数名 | 类型 | 必填 | 说明 | 1267| ----------| ---------------------------------| ---- | ------------------------------------------------ | 1268| uri | string | 是 | 表示待处理的DataAbility。例:'dataability:///com.example.xxx.xxxx'。| 1269| operations | Array\<[DataAbilityOperation](js-apis-inner-ability-dataAbilityOperation.md)> | 是 | 表示数据操作数组,其中可以包含对数据库的多个不同操作。 | 1270| callback | AsyncCallback\<Array\<[DataAbilityResult](js-apis-inner-ability-dataAbilityResult.md)>> | 是 | 回调函数,在DataAbilityResult数组中返回每个操作的结果。 | 1271 1272**示例:** 1273 1274<!--code_no_check_fa--> 1275```ts 1276import ability from '@ohos.ability.ability'; 1277import featureAbility from '@ohos.ability.featureAbility'; 1278 1279// 根据DataAbilityOperation列表选择要对数据库做的操作 1280let op: Array<ability.DataAbilityOperation> = new Array(); 1281let dataAbilityHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1282 'dataability:///com.example.jsapidemo.UserDataAbility' 1283); 1284dataAbilityHelper.executeBatch('dataability:///com.example.jsapidemo.UserDataAbility', op, (error, data) => { 1285 if (error && error.code !== 0) { 1286 console.error(`executeBatch fail, error: ${JSON.stringify(error)}`); 1287 } else { 1288 console.log(`executeBatch success, data: ${JSON.stringify(data)}`); 1289 } 1290}); 1291``` 1292 1293## DataAbilityHelper.executeBatch 1294 1295executeBatch(uri: string, operations: Array\<DataAbilityOperation>): Promise\<Array\<DataAbilityResult>> 1296 1297批量操作数据库中的数据。使用Promise异步回调。 1298 1299**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1300 1301**模型约束**:此接口仅可在FA模型下使用。 1302 1303**参数:** 1304 1305| 参数名 | 类型 | 必填 | 说明 | 1306| ---------- | -------------------------------| ---- | ------------------------------------------------ | 1307| uri | string | 是 | 表示待处理的DataAbility。例:'dataability:///com.example.xxx.xxxx'。| 1308| operations | Array\<[DataAbilityOperation](js-apis-inner-ability-dataAbilityOperation.md)> | 是 | 表示数据操作数组,其中可以包含对数据库的多个不同操作。 | 1309 1310**返回值:** 1311 1312| 类型 | 说明 | 1313|------ | ------- | 1314|Promise\<Array\<[DataAbilityResult](js-apis-inner-ability-dataAbilityResult.md)>> | Promise对象,在DataAbilityResult数组中返回每个操作的结果。 | 1315 1316**示例:** 1317 1318<!--code_no_check_fa--> 1319```ts 1320import ability from '@ohos.ability.ability'; 1321import featureAbility from '@ohos.ability.featureAbility'; 1322import { BusinessError } from '@ohos.base'; 1323 1324// 根据DataAbilityOperation列表选择要对数据库做的操作 1325let op: Array<ability.DataAbilityOperation> = new Array(); 1326let dataAbilityHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper( 1327 'dataability:///com.example.jsapidemo.UserDataAbility' 1328); 1329dataAbilityHelper.executeBatch('dataability:///com.example.jsapidemo.UserDataAbility', op).then((data) => { 1330 console.info('executeBatch success, data: ${data}'); 1331}).catch((error: BusinessError) => { 1332 console.error('executeBatch failed, error: ${error}'); 1333}); 1334 1335``` 1336 1337## PacMap 1338 1339[key: string]: number | string | boolean | Array\<string | number | boolean> | null 1340 1341用于存储数据的PacMap类型。 1342 1343**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel 1344 1345| 参数名 | 参数类型 | 必填 | 说明 | 1346| ------ | ------ | ------ | ------ | 1347| [key: string] | number \| string \| boolean \| Array\<string \| number \| boolean\> \| null | 是 | 数据存储在键值对中。|