• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# DataAbilityHelper模块(JS端SDK接口)
2
3> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
4> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
5
6## 导入模块
7
8```js
9import featureAbility from '@ohos.ability.featureAbility'
10```
11
12## 使用说明
13
14使用前根据具体情况引入如下模块
15```
16import featureAbility from '@ohos.ability.featureAbility'
17import ohos_data_ability from '@ohos.data.dataability'
18import ohos_data_rdb from '@ohos.data.rdb'
19```
20
21## DataAbilityHelper.openFile
22
23openFile(uri: string, mode: string, callback: AsyncCallback\<number>): void
24
25在指定的远程路径中打开文件(callback形式)。
26
27**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
28
29**参数:**
30
31| 名称     | 类型                   | 必填 | 描述                               |
32| -------- | ---------------------- | ---- | ---------------------------------- |
33| uri      | string                 | 是   | 指示要打开的文件的路径。           |
34| mode     | string                 | 是   | 指示文件打开模式‘rwt’。            |
35| callback | AsyncCallback\<number> | 是   | 被指定的回调方法,返回文件描述符。 |
36
37**示例:**
38
39```javascript
40import featureAbility from '@ohos.ability.featureAbility'
41var DAHelper = featureAbility.acquireDataAbilityHelper(
42    "dataability:///com.example.DataAbility"
43);
44var mode = "rwt";
45DAHelper.openFile(
46    "dataability:///com.example.DataAbility",
47    mode,
48    (err) => {
49		console.info("==========================>Called=======================>");
50});
51```
52
53## DataAbilityHelper.openFile
54
55openFile(uri: string, mode: string): Promise\<number>
56
57在指定的远程路径中打开文件(promise形式)。
58
59**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
60
61**参数:**
62
63| 名称 | 类型   | 必填 | 描述                     |
64| ---- | ------ | ---- | ------------------------ |
65| uri  | string | 是   | 指示要打开的文件的路径。 |
66| mode | string | 是   | 指示文件打开模式‘rwt’。  |
67
68**返回值:**
69
70| 类型             | 说明             |
71| ---------------- | ---------------- |
72| Promise\<number> | 返回文件描述符。 |
73
74**示例:**
75
76```javascript
77import featureAbility from '@ohos.ability.featureAbility'
78var DAHelper = featureAbility.acquireDataAbilityHelper(
79    "dataability:///com.example.DataAbility"
80);
81var mode = "rwt";
82DAHelper.openFile(
83    "dataability:///com.example.DataAbility",
84    mode).then((data) => {
85		console.info("==========================>openFileCallback=======================>");
86});
87```
88
89## DataAbilityHelper.on
90
91on(type: 'dataChange', uri: string, callback: AsyncCallback\<void>): void
92
93注册观察者以观察给定uri指定的数据callback通知。
94
95**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
96
97**参数:**
98
99| 名称     | 类型                 | 必填 | 描述                     |
100| -------- | -------------------- | ---- | ------------------------ |
101| type     | string               | 是   | 数据更改。               |
102| uri      | string               | 是   | 指示要操作的数据的路径。 |
103| callback | AsyncCallback\<void> | 是   | 指示数据更改时的回调。   |
104
105**示例:**
106
107```js
108import featureAbility from '@ohos.ability.featureAbility'
109var helper = featureAbility.acquireDataAbilityHelper(
110    "dataability:///com.example.DataAbility"
111);
112function onChangeNotify() {
113    console.info("==========================>onChangeNotify=======================>");
114};
115helper.on(
116    "dataChange",
117    "dataability:///com.example.DataAbility",
118    onChangeNotify
119)
120```
121
122## DataAbilityHelper.off
123
124off(type: 'dataChange', uri: string, callback?: AsyncCallback\<void>): void
125
126注消观察者以停止观察给定uri指定的数据callback通知。
127
128**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
129
130**参数:**
131
132| 名称     | 类型                 | 必填 | 描述                     |
133| -------- | -------------------- | ---- | ------------------------ |
134| type     | string               | 是   | 数据更改。               |
135| uri      | string               | 是   | 指示要操作的数据的路径。 |
136| callback | AsyncCallback\<void> | 否   | 指示已注册的回调。       |
137
138**示例:**
139
140```js
141import featureAbility from '@ohos.ability.featureAbility'
142var helper = featureAbility.acquireDataAbilityHelper(
143    "dataability:///com.example.DataAbility"
144);
145function onChangeNotify() {
146    console.info("==========================>onChangeNotify=======================>");
147};
148helper.off(
149    "dataChange",
150    "dataability:///com.example.DataAbility",
151)
152helper.off(
153    "dataChange",
154    "dataability:///com.example.DataAbility",
155    onChangeNotify
156)
157```
158
159## DataAbilityHelper.getType
160
161getType(uri: string, callback: AsyncCallback\<string>): void
162
163获取给定URI指定数据的MIME类型(callback形式)。
164
165**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
166
167**参数:**
168
169| 名称     | 类型                   | 必填 | 描述                                          |
170| -------- | ---------------------- | ---- | --------------------------------------------- |
171| uri      | string                 | 是   | 指示要操作的数据的路径。                      |
172| callback | AsyncCallback\<string> | 是   | 回调方法,返回与uri指定的数据匹配的MIME类型。 |
173
174**示例:**
175
176```js
177import featureAbility from '@ohos.ability.featureAbility'
178var DAHelper = featureAbility.acquireDataAbilityHelper(
179    "dataability:///com.example.DataAbility"
180);
181DAHelper.getType(
182    "dataability:///com.example.DataAbility",
183    (err, data) => {
184		console.info("==========================>Called=======================>");
185});
186```
187
188## DataAbilityHelper.getType
189
190getType(uri: string): Promise\<string>
191
192获取给定URI指定数据的MIME类型(Promise形式)。
193
194**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
195
196**参数:**
197
198| 名称 | 类型   | 必填 | 描述                     |
199| ---- | ------ | ---- | ------------------------ |
200| uri  | string | 是   | 指示要操作的数据的路径。 |
201
202**返回值:**
203
204| 类型             | 说明                                |
205| ---------------- | ----------------------------------- |
206| Promise\<string> | 返回与uri指定的数据匹配的MIME类型。 |
207
208**示例:**
209
210```js
211import featureAbility from '@ohos.ability.featureAbility'
212var DAHelper = featureAbility.acquireDataAbilityHelper(
213    "dataability:///com.example.DataAbility"
214);
215DAHelper.getType(
216    "dataability:///com.example.DataAbility"
217	).then((data) => {
218		console.info("==========================>getTypeCallback=======================>");
219});
220```
221
222## DataAbilityHelper.getFileTypes
223
224getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback<Array\<string>>): void
225
226获取支持的文件的MIME类型(callback形式)。
227
228**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
229
230**参数:**
231
232| 名称           | 类型                           | 必填 | 描述                               |
233| -------------- | ------------------------------ | ---- | ---------------------------------- |
234| uri            | string                         | 是   | 指示要获取的文件的路径。           |
235| mimeTypeFilter | string                         | 是   | 指示要获取的文件的MIME类型。       |
236| callback       | AsyncCallback\<Array\<string>> | 是   | 回调方法,返回匹配的MIME类型数组。 |
237
238**示例:**
239
240```js
241import featureAbility from '@ohos.ability.featureAbility'
242var DAHelper = featureAbility.acquireDataAbilityHelper(
243    "dataability:///com.example.DataAbility"
244);
245DAHelper.getFileTypes(
246    "dataability:///com.example.DataAbility",
247    "image/*",
248    (err, data) => {
249		console.info("==========================>Called=======================>");
250});
251```
252
253
254
255## DataAbilityHelper.getFileTypes
256
257getFileTypes(uri: string, mimeTypeFilter: string): Promise\<Array\<string>>
258
259获取支持的文件的MIME类型(Promise形式)。
260
261**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
262
263**参数:**
264
265| 名称           | 类型   | 必填 | 描述                         |
266| -------------- | ------ | ---- | ---------------------------- |
267| uri            | string | 是   | 指示要获取的文件的路径。     |
268| mimeTypeFilter | string | 是   | 指示要获取的文件的MIME类型。 |
269
270**返回值:**
271
272| 类型                     | 说明                     |
273| ------------------------ | ------------------------ |
274| Promise\<Array\<string>> | 返回匹配的MIME类型数组。 |
275
276**示例:**
277
278```js
279import featureAbility from '@ohos.ability.featureAbility'
280var DAHelper = featureAbility.acquireDataAbilityHelper(
281    "dataability:///com.example.DataAbility"
282);
283DAHelper.getFileTypes(
284    "dataability:///com.example.DataAbility",
285    "image/*"
286	).then((data) => {
287		console.info("==========================>getFileTypesCallback=======================>");
288});
289```
290
291## DataAbilityHelper.normalizeUri
292
293normalizeUri(uri: string, callback: AsyncCallback\<string>): void
294
295将引用数据功能的给定uri转换为规范化uri(callback形式)。
296
297**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
298
299**参数:**
300
301| 名称     | 类型                   | 必填 | 描述                                                         |
302| -------- | ---------------------- | ---- | ------------------------------------------------------------ |
303| uri      | string                 | 是   | 指示要规范化的uri对象。                                      |
304| callback | AsyncCallback\<string> | 是   | 回调方法。如果数据功能支持uri规范化,则返回规范化uri对象;否则返回null。 |
305
306**示例:**
307
308```js
309import featureAbility from '@ohos.ability.featureAbility'
310var DAHelper = featureAbility.acquireDataAbilityHelper(
311    "dataability:///com.example.DataAbility"
312);
313DAHelper.normalizeUri(
314    "dataability:///com.example.DataAbility",
315    (err, data) => {
316		console.info("==========================>Called=======================>");
317});
318```
319
320## DataAbilityHelper.normalizeUri
321
322normalizeUri(uri: string): Promise\<string>
323
324将引用数据功能的给定uri转换为规范化uri(Promise形式)。
325
326**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
327
328**参数:**
329
330| 名称 | 类型   | 必填 | 描述                    |
331| ---- | ------ | ---- | ----------------------- |
332| uri  | string | 是   | 指示要规范化的uri对象。 |
333
334**返回值:**
335
336| 类型             | 说明                                                   |
337| ---------------- | ------------------------------------------------------ |
338| Promise\<string> | 如果数据功能支持uri规范化,则返回规范化uri对象;否则返回null。 |
339
340**示例:**
341
342```js
343import featureAbility from '@ohos.ability.featureAbility'
344var DAHelper = featureAbility.acquireDataAbilityHelper(
345    "dataability:///com.example.DataAbility"
346);
347DAHelper.normalizeUri(
348    "dataability:///com.example.DataAbility",
349	).then((data) => {
350		console.info("==========================>normalizeUriCallback=======================>");
351});
352```
353
354## DataAbilityHelper.denormalizeUri
355
356denormalizeUri(uri: string, callback: AsyncCallback\<string>): void
357
358将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式)。
359
360**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
361
362**参数:**
363
364| 名称     | 类型                   | 必填 | 描述                                                |
365| -------- | ---------------------- | ---- | --------------------------------------------------- |
366| uri      | string                 | 是   | 指示要规范化的uri对象。                             |
367| callback | AsyncCallback\<string> | 是   | 回调方法。如果反规范化成功,则返回反规范化uri对象。 |
368
369**示例:**
370
371```js
372import featureAbility from '@ohos.ability.featureAbility'
373var DAHelper = featureAbility.acquireDataAbilityHelper(
374    "dataability:///com.example.DataAbility"
375);
376DAHelper.denormalizeUri(
377    "dataability:///com.example.DataAbility",
378    (err, data) => {
379		console.info("==========================>Called=======================>");
380});
381```
382
383
384
385## DataAbilityHelper.denormalizeUri
386
387denormalizeUri(uri: string): Promise\<string>
388
389将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(Promise形式)。
390
391**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
392
393**参数:**
394
395| 名称 | 类型   | 必填 | 描述                    |
396| ---- | ------ | ---- | ----------------------- |
397| uri  | string | 是   | 指示要规范化的uri对象。 |
398
399**返回值:**
400
401| 类型             | 说明                                      |
402| ---------------- | ----------------------------------------- |
403| Promise\<string> | 如果反规范化成功,则返回反规范化uri对象。 |
404
405**示例:**
406
407```js
408import featureAbility from '@ohos.ability.featureAbility'
409var DAHelper = featureAbility.acquireDataAbilityHelper(
410    "dataability:///com.example.DataAbility"
411);
412DAHelper.denormalizeUri(
413    "dataability:///com.example.DataAbility",
414	).then((data) => {
415		console.info("==========================>denormalizeUriCallback=======================>");
416});
417```
418
419## DataAbilityHelper.notifyChange
420
421notifyChange(uri: string, callback: AsyncCallback\<void>): void
422
423通知已注册的观察者uri指定的数据资源的更改(callback形式)。
424
425**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
426
427**参数:**
428
429| 名称     | 类型                 | 必填 | 描述                     |
430| -------- | -------------------- | ---- | ------------------------ |
431| uri      | string               | 是   | 指示要操作的数据的路径。 |
432| callback | AsyncCallback\<void> | 是   | 回调方法。               |
433
434**示例:**
435
436```js
437import featureAbility from '@ohos.ability.featureAbility'
438var helper = featureAbility.acquireDataAbilityHelper(
439    "dataability:///com.example.DataAbility"
440);
441helper.notifyChange(
442    "dataability:///com.example.DataAbility",
443    (err) => {
444		console.info("==========================>Called=======================>");
445});
446```
447
448## DataAbilityHelper.notifyChange
449
450notifyChange(uri: string): Promise\<void>
451
452通知已注册的观察者uri指定的数据资源的更改(Promise形式)。
453
454**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
455
456**参数:**
457
458| 名称 | 类型   | 必填 | 描述                     |
459| ---- | ------ | ---- | ------------------------ |
460| uri  | string | 是   | 指示要操作的数据的路径。 |
461
462**返回值:**
463
464| 类型           | 说明                  |
465| -------------- | --------------------- |
466| Promise\<void> | 返回值为Promise对象。 |
467
468**示例:**
469
470```js
471import featureAbility from '@ohos.ability.featureAbility'
472var DAHelper = featureAbility.acquireDataAbilityHelper(
473    "dataability:///com.example.DataAbility"
474);
475DAHelper.notifyChange(
476    "dataability:///com.example.DataAbility",
477	).then(() => {
478		console.info("==========================>notifyChangeCallback=======================>");
479});
480```
481
482## DataAbilityHelper.insert
483
484insert(uri: string, valuesBucket: rdb.ValuesBucket, callback: AsyncCallback\<number>): void
485
486将单个数据记录插入数据库(callback形式)。
487
488**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
489
490**参数:**
491
492| 名称         | 类型                   | 必填 | 描述                                                   |
493| ------------ | ---------------------- | ---- | ------------------------------------------------------ |
494| uri          | string                 | 是   | 指示要插入的数据的路径。                               |
495| valuesBucket | rdb.ValuesBucket       | 是   | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
496| callback     | AsyncCallback\<number> | 是   | 回调方法,返回插入数据记录的索引。                     |
497
498**示例:**
499
500```js
501import featureAbility from '@ohos.ability.featureAbility'
502var DAHelper = featureAbility.acquireDataAbilityHelper(
503    "dataability:///com.example.DataAbility"
504);
505const valueBucket = {
506    "name": "rose",
507    "age": 22,
508    "salary": 200.5,
509    "blobType": u8,
510}
511DAHelper.insert(
512    "dataability:///com.example.DataAbility",
513    valueBucket,
514    (err, data) => {
515		console.info("==========================>Called=======================>");
516});
517```
518
519## DataAbilityHelper.insert
520
521insert(uri: string, valuesBucket: rdb.ValuesBucket): Promise\<number>
522
523将单个数据记录插入数据库(Promise形式)。
524
525**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
526
527**参数:**
528
529| 名称         | 类型             | 必填 | 描述                                                   |
530| ------------ | ---------------- | ---- | ------------------------------------------------------ |
531| uri          | string           | 是   | 指示要插入的数据的路径。                               |
532| valuesBucket | rdb.ValuesBucket | 是   | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
533
534**返回值:**
535
536| 类型             | 说明                     |
537| ---------------- | ------------------------ |
538| Promise\<number> | 返回插入数据记录的索引。 |
539
540**示例:**
541
542```js
543import featureAbility from '@ohos.ability.featureAbility'
544var DAHelper = featureAbility.acquireDataAbilityHelper(
545    "dataability:///com.example.DataAbility"
546);
547const valueBucket = {
548    "name": "rose1",
549    "age": 221,
550    "salary": 20.5,
551    "blobType": u8,
552}
553DAHelper.insert(
554    "dataability:///com.example.DataAbility",
555    valueBucket
556	).then((data) => {
557		console.info("==========================>insertCallback=======================>");
558});
559```
560
561## DataAbilityHelper.batchInsert
562
563batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>, callback: AsyncCallback\<number>): void
564
565插入数据库(callback形式)。
566
567**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
568
569**参数:**
570
571| 名称         | 类型                    | 必填 | 描述                             |
572| ------------ | ----------------------- | ---- | -------------------------------- |
573| uri          | string                  | 是   | 指示要插入的数据的路径。         |
574| valuesBucket | Array<rdb.ValuesBucket> | 是   | 指示要插入的数据记录。           |
575| callback     | AsyncCallback\<number>  | 是   | 回调方法。返回插入的数据记录数。 |
576
577**示例:**
578
579```js
580import featureAbility from '@ohos.ability.featureAbility'
581var DAHelper = featureAbility.acquireDataAbilityHelper(
582    "dataability:///com.example.DataAbility"
583);
584var cars = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,},
585                     {"name": "roe12", "age": 21, "salary": 20.5, "blobType": u8,},
586                     {"name": "roe13", "age": 21, "salary": 20.5, "blobType": u8,})
587DAHelper.batchInsert(
588    "dataability:///com.example.DataAbility",
589    cars,
590    (err, data) => {
591		console.info("==========================>Called=======================>");
592});
593```
594
595## DataAbilityHelper.batchInsert
596
597batchInsert(uri: string, valuesBuckets: Array<rdb.ValuesBucket>): Promise\<number>
598
599将多个数据记录插入数据库(Promise形式)。
600
601**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
602
603**参数:**
604
605| 名称         | 类型                    | 必填 | 描述                     |
606| ------------ | ----------------------- | ---- | ------------------------ |
607| uri          | string                  | 是   | 指示要插入的数据的路径。 |
608| valuesBucket | Array<rdb.ValuesBucket> | 是   | 指示要插入的数据记录。   |
609
610**返回值:**
611
612| 类型             | 说明                   |
613| ---------------- | ---------------------- |
614| Promise\<number> | 返回插入的数据记录数。 |
615
616**示例:**
617
618```js
619import featureAbility from '@ohos.ability.featureAbility'
620var DAHelper = featureAbility.acquireDataAbilityHelper(
621    "dataability:///com.example.DataAbility"
622);
623var cars = new Array({"name": "roe11", "age": 21, "salary": 20.5, "blobType": u8,},
624                     {"name": "roe12", "age": 21, "salary": 20.5, "blobType": u8,},
625                     {"name": "roe13", "age": 21, "salary": 20.5, "blobType": u8,})
626DAHelper.batchInsert(
627    "dataability:///com.example.DataAbility",
628    cars
629	).then((data) => {
630		console.info("==========================>batchInsertCallback=======================>");
631});
632```
633
634## DataAbilityHelper.delete
635
636delete(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>): void
637
638从数据库中删除一个或多个数据记录(callback形式)。
639
640**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
641
642**参数:**
643
644| 名称         | 类型                              | 必填 | 描述                                             |
645| ------------ | --------------------------------- | ---- | ------------------------------------------------ |
646| uri          | string                            | 是   | 指示要删除的数据的路径。                         |
647| valuesBucket | dataAbility.DataAbilityPredicates | 是   | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
648| callback     | AsyncCallback\<number>            | 是   | 回调方法。返回已删除的数据记录数。               |
649
650**示例:**
651
652```js
653import featureAbility from '@ohos.ability.featureAbility'
654import ohos_data_ability from '@ohos.data.dataability'
655var DAHelper = featureAbility.acquireDataAbilityHelper(
656    "dataability:///com.example.DataAbility"
657);
658let da = new ohos_data_ability.DataAbilityPredicates()
659DAHelper.delete(
660    "dataability:///com.example.DataAbility",
661    da,
662    (err, data) => {
663		console.info("==========================>Called=======================>");
664});
665```
666
667## DataAbilityHelper.delete
668
669delete(uri: string, predicates: dataAbility.DataAbilityPredicates): Promise\<number>
670
671从数据库中删除一个或多个数据记录(Promise形式)。
672
673**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
674
675**参数:**
676
677| 名称         | 类型                              | 必填 | 描述                                             |
678| ------------ | --------------------------------- | ---- | ------------------------------------------------ |
679| uri          | string                            | 是   | 指示要删除的数据的路径。                         |
680| valuesBucket | dataAbility.DataAbilityPredicates | 是   | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
681
682**返回值:**
683
684| 类型             | 说明                     |
685| ---------------- | ------------------------ |
686| Promise\<number> | 返回已删除的数据记录数。 |
687
688**示例:**
689
690```js
691import featureAbility from '@ohos.ability.featureAbility'
692var DAHelper = featureAbility.acquireDataAbilityHelper(
693    "dataability:///com.example.DataAbility"
694);
695let da = new ohos_data_ability.DataAbilityPredicates()
696DAHelper.delete(
697    "dataability:///com.example.DataAbility",
698    da
699	).then((data) => {
700		console.info("==========================>deleteCallback=======================>");
701});
702```
703
704## DataAbilityHelper.update
705
706update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<number>): void
707
708更新数据库中的数据记录(callback形式)。
709
710**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
711
712**参数:**
713
714| 名称         | 类型                              | 必填 | 描述                                             |
715| ------------ | --------------------------------- | ---- | ------------------------------------------------ |
716| uri          | string                            | 是   | 指示要更新的数据的路径。                         |
717| valuesBucket | rdb.ValuesBucket                  | 是   | 指示要更新的数据。                               |
718| predicates   | dataAbility.DataAbilityPredicates | 是   | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
719| callback     | AsyncCallback\<number>            | 是   | 回调方法,返回更新的数据记录数。                 |
720
721**示例:**
722
723```js
724import featureAbility from '@ohos.ability.featureAbility'
725import ohos_data_ability from '@ohos.data.dataability'
726var DAHelper = featureAbility.acquireDataAbilityHelper(
727    "dataability:///com.example.DataAbility"
728);
729const va = {
730    "name": "roe1",
731    "age": 21,
732    "salary": 20.5,
733    "blobType": u8,
734}
735let da = new ohos_data_ability.DataAbilityPredicates()
736DAHelper.update(
737    "dataability:///com.example.DataAbility",
738    va,
739    da,
740    (err, data) => {
741		console.info("==========================>Called=======================>");
742});
743```
744
745## DataAbilityHelper.update
746
747update(uri: string, valuesBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates): Promise\<number>
748
749更新数据库中的数据记录(Promise形式)。
750
751**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
752
753**参数:**
754
755| 名称         | 类型                              | 必填 | 描述                                             |
756| ------------ | --------------------------------- | ---- | ------------------------------------------------ |
757| uri          | string                            | 是   | 指示要更新的数据的路径。                         |
758| valuesBucket | rdb.ValuesBucket                  | 是   | 指示要更新的数据。                               |
759| predicates   | dataAbility.DataAbilityPredicates | 是   | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
760
761**返回值:**
762
763| 类型             | 说明                                         |
764| ---------------- | -------------------------------------------- |
765| Promise\<number> | Promise中包含更新的数据记录数。 。 |
766
767**示例:**
768
769```js
770import featureAbility from '@ohos.ability.featureAbility'
771import ohos_data_ability from '@ohos.data.dataability'
772var DAHelper = featureAbility.acquireDataAbilityHelper(
773    "dataability:///com.example.DataAbility"
774);
775const va = {
776    "name": "roe1",
777    "age": 21,
778    "salary": 20.5,
779    "blobType": u8,
780}
781let da = new ohos_data_ability.DataAbilityPredicates()
782DAHelper.update(
783    "dataability:///com.example.DataAbility",
784    va,
785    da
786	).then((data) => {
787		console.info("==========================>updateCallback=======================>");
788});
789```
790
791## DataAbilityHelper.query
792
793query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback\<ResultSet>): void
794
795查询数据库中的数据(callback形式)。
796
797**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
798
799**参数:**
800
801| 名称       | 类型                              | 必填 | 描述                                             |
802| ---------- | --------------------------------- | ---- | ------------------------------------------------ |
803| uri        | string                            | 是   | 指示要查询的数据的路径。                         |
804| columns    | rdb.ValuesBucket                  | 是   | 指示要查询的列。如果此参数为空,则查询所有列。   |
805| predicates | dataAbility.DataAbilityPredicates | 是   | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
806| callback   | AsyncCallback\<ResultSet>         | 是   | 回调方法,返回查询结果。                         |
807
808**示例:**
809
810```js
811import featureAbility from '@ohos.ability.featureAbility'
812import ohos_data_ability from '@ohos.data.dataability'
813var DAHelper = featureAbility.acquireDataAbilityHelper(
814    "dataability:///com.example.DataAbility"
815);
816var cars=new Array("value1", "value2", "value3", "value4");
817let da = new ohos_data_ability.DataAbilityPredicates()
818DAHelper.query(
819    "dataability:///com.example.DataAbility",
820    cars,
821    da,
822    (err, data) => {
823		console.info("==========================>Called=======================>");
824});
825```
826
827
828
829## DataAbilityHelper.query
830
831query(uri: string, columns: Array\<string>, predicates: dataAbility.DataAbilityPredicates): Promise\<ResultSet>
832
833查询数据库中的数据(Promise形式)。
834
835**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
836
837**参数:**
838
839| 名称       | 类型                              | 必填 | 描述                                             |
840| ---------- | --------------------------------- | ---- | ------------------------------------------------ |
841| uri        | string                            | 是   | 指示要查询的数据的路径。                         |
842| columns    | rdb.ValuesBucket                  | 是   | 指示要查询的列。如果此参数为空,则查询所有列。   |
843| predicates | dataAbility.DataAbilityPredicates | 是   | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
844
845**返回值:**
846
847| 类型                | 说明           |
848| ------------------- | -------------- |
849| Promise\<ResultSet> | 返回查询结果。 |
850
851**示例:**
852
853```js
854import featureAbility from '@ohos.ability.featureAbility'
855import ohos_data_ability from '@ohos.data.dataability'
856var DAHelper = featureAbility.acquireDataAbilityHelper(
857    "dataability:///com.example.DataAbility"
858);
859var cars=new Array("value1", "value2", "value3", "value4");
860let da = new ohos_data_ability.DataAbilityPredicates()
861DAHelper.query(
862    "dataability:///com.example.DataAbility",
863    cars,
864    da
865	).then((data) => {
866		console.info("==========================>queryCallback=======================>");
867});
868```
869
870## DataAbilityHelper.call
871
872call(uri: string, method: string, arg: string, extras: PacMap): Promise\<PacMap>
873
874调用DataAbility的扩展接口,使用Promise方式作为异步方法。
875
876**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
877
878**参数:**
879
880| 名称       | 类型                              | 必填 | 描述                                             |
881| ---------- | --------------------------------- | ---- | ------------------------------------------------ |
882| uri        | string                 | 是   | 指定待处理的DataAbility。例:"dataability:///com.example.xxx.xxxx"           |
883| method    | string                  | 是   | 被调用的方法名。   |
884| arg      | string                   | 是   |需传入的参数。      |
885| extras   | [PacMap](#pacmap)        | 是   | 键值对参数。       |
886
887**返回值:**
888
889| 类型 | 说明 |
890|------ | ------- |
891|Promise\<[PacMap](#pacmap)> | 调用的返回值。 |
892
893**示例:**
894
895```js
896import featureAbility from '@ohos.ability.featureAbility';
897
898let dataAbilityHelper = featureAbility.acquireDataAbilityHelper("dataability:///com.example.jsapidemo.UserDataAbility");
899dataAbilityHelper.call("dataability:///com.example.jsapidemo.UserDataAbility", "method", "arg", {"key1":"value1"}).then((data) => {
900    console.info('Operation succeeded: ' + data);
901}).catch((error) => {
902    console.error('Operation failed. Cause: ' + error);
903});
904```
905
906## DataAbilityHelper.call
907
908call(uri: string, method: string, arg: string, extras: PacMap, callback: AsyncCallback\<PacMap>): void
909
910调用DataAbility的扩展接口,使用callback方式作为异步方法。
911
912**系统能力**:SystemCapability.Ability.AbilityRuntime.FAModel
913
914**参数:**
915
916| 名称       | 类型                              | 必填 | 描述                                             |
917| ---------- | --------------------------------- | ---- | ------------------------------------------------ |
918| uri        | string                 | 是   | 指定待处理的DataAbility。例:"dataability:///com.example.xxx.xxxx"           |
919| method    | string                  | 是   | 被调用的方法名。   |
920| arg      | string                   | 是   |需传入的参数。      |
921| extras   | [PacMap](#pacmap)        | 是   | 键值对参数。       |
922| callback | AsyncCallback\<[PacMap](#pacmap)> | 是 | 返回值。     |
923
924**示例:**
925
926```js
927import featureAbility from '@ohos.ability.featureAbility';
928
929let dataAbilityHelper = featureAbility.acquireDataAbilityHelper("dataability:///com.example.jsapidemo.UserDataAbility");
930dataAbilityHelper.call("dataability:///com.example.jsapidemo.UserDataAbility", "method", "arg", {"key1":"value1"}, (err, data) => {
931    if (err) {
932        console.error('Operation failed. Cause: ' + err);
933        return;
934    }
935    console.info('Operation succeeded: ' + data);
936});
937```
938## PacMap
939
940| 名称 | 参数类型 | 必填 | 说明 |
941| ------ | ------ | ------ | ------ |
942| [key: string] | number \| string \| boolean \| Array\<string \| number \| boolean\> \| null | 是 | 数据存储在键值对中。 |