chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)組件:?jiǎn)?dòng)與訪問DataAbility

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-06-20 15:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

啟動(dòng)DataAbility

啟動(dòng)DataAbility會(huì)獲取一個(gè)工具接口類對(duì)象(DataAbilityHelper)。啟動(dòng)DataAbility的示例代碼如下:

import featureAbility from '@ohos.ability.featureAbility';
import ability from '@ohos.ability.ability';

let uri: string = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper(uri);

訪問DataAbility

訪問DataAbility需導(dǎo)入基礎(chǔ)依賴包,以及獲取與DataAbility子模塊通信的URI字符串。

其中,基礎(chǔ)依賴包包括: 開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

搜狗高速瀏覽器截圖20240326151547.png

  • @ohos.ability.featureAbility
  • @ohos.data.dataAbility

訪問DataAbility的示例代碼如下:

  1. 創(chuàng)建工具接口類對(duì)象。

    import featureAbility from '@ohos.ability.featureAbility';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import ability from '@ohos.ability.ability';
    // 作為參數(shù)傳遞的URI,與config中定義的URI的區(qū)別是多了一個(gè)"/",有三個(gè)"/"
    let uri: string = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
    let DAHelper: ability.DataAbilityHelper = featureAbility.acquireDataAbilityHelper(uri);
    
  2. 構(gòu)建數(shù)據(jù)庫相關(guān)的RDB數(shù)據(jù)。

    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    let valuesBucket_insert: rdb.ValuesBucket = { name: 'Rose', introduction: 'insert' };
    let valuesBucket_update: rdb.ValuesBucket = { name: 'Rose', introduction: 'update' };
    let crowd = new Array({ name: 'Rose', introduction: 'batchInsert_one' } as rdb.ValuesBucket,
      { name: 'Rose', introduction: 'batchInsert_two' } as rdb.ValuesBucket);
    let columnArray = new Array('id', 'name', 'introduction');
    let predicates = new ohos_data_ability.DataAbilityPredicates();
    

    注:關(guān)于DataAbilityPredicates的詳細(xì)內(nèi)容,請(qǐng)參考[DataAbility謂詞]。

  3. 調(diào)用insert方法向指定的DataAbility子模塊插入數(shù)據(jù)。

    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    
    // callback方式調(diào)用:
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private valuesBucket_insert: rdb.ValuesBucket = { name: 'Rose', introduction: 'insert' };
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // callback方式調(diào)用:
                  this.DAHelper.insert(this.uri, this.valuesBucket_insert, (error: BusinessError, data: number) = > {
                    if (error && error.code !== 0) {
                      promptAction.showToast({
                        message: $r('app.string.insert_failed_toast')
                      });
                    } else {
                      promptAction.showToast({
                        message: $r('app.string.insert_success_toast')
                      });
                    }
                    hilog.info(domain, TAG, 'DAHelper insert result: ' + data + ', error: ' + JSON.stringify(error));
                  }
                  );
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private valuesBucket_insert: rdb.ValuesBucket = { name: 'Rose', introduction: 'insert' };
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // promise方式調(diào)用(await需要在async方法中使用):
                  this.DAHelper.insert(this.uri, this.valuesBucket_insert).then((datainsert) = > {
                    promptAction.showToast({
                      message: $r('app.string.insert_success_toast')
                    });
                    hilog.info(domain, TAG, 'DAHelper insert result: ' + datainsert);
                  }).catch((error: BusinessError) = > {
                    promptAction.showToast({
                      message: $r('app.string.insert_failed_toast')
                    });
                    hilog.error(domain, TAG, `DAHelper insert failed. Cause: ${error.message}`);
                  });
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
  4. 調(diào)用delete方法刪除DataAbility子模塊中指定的數(shù)據(jù)。

    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private predicates = new ohos_data_ability.DataAbilityPredicates();
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // callback方式調(diào)用:
                  this.DAHelper.delete(this.uri, this.predicates, (error, data) = > {
                    if (error && error.code !== 0) {
                      promptAction.showToast({
                        message: $r('app.string.delete_failed_toast')
                      });
                    } else {
                      promptAction.showToast({
                        message: $r('app.string.delete_success_toast')
                      });
                    }
                    hilog.info(domain, TAG, 'DAHelper delete result: ' + data + ', error: ' + JSON.stringify(error));
                  }
                  );
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private predicates = new ohos_data_ability.DataAbilityPredicates();
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // promise方式調(diào)用(await需要在async方法中使用):
                  this.DAHelper.delete(this.uri, this.predicates).then((datadelete) = > {
                    promptAction.showToast({
                      message: $r('app.string.delete_success_toast')
                    });
                    hilog.info(domain, TAG, 'DAHelper delete result: ' + datadelete);
                  }).catch((error: BusinessError) = > {
                    promptAction.showToast({
                      message: $r('app.string.delete_failed_toast')
                    });
                    hilog.error(domain, TAG, `DAHelper delete failed. Cause: ${error.message}`);
                  });
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
  5. 調(diào)用update方法更新指定DataAbility子模塊中的數(shù)據(jù)。

    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private valuesBucket_update: rdb.ValuesBucket = { name: 'Rose', introduction: 'update' };
      private predicates = new ohos_data_ability.DataAbilityPredicates();
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // callback方式調(diào)用:
                  this.predicates.equalTo('name', 'Rose');
                  this.DAHelper.update(this.uri, this.valuesBucket_update, this.predicates, (error, data) = > {
                    if (error && error.code !== 0) {
                      promptAction.showToast({
                        message: $r('app.string.update_failed_toast')
                      });
                    } else {
                      promptAction.showToast({
                        message: $r('app.string.update_success_toast')
                      });
                    }
                    hilog.info(domain, TAG, 'DAHelper update result: ' + data + ', error: ' + JSON.stringify(error));
                  }
                  );
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private valuesBucket_update: rdb.ValuesBucket = { name: 'Rose', introduction: 'update' };
      private predicates = new ohos_data_ability.DataAbilityPredicates();
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // promise方式調(diào)用(await需要在async方法中使用):
                  this.predicates.equalTo('name', 'Rose');
                  this.DAHelper.update(this.uri, this.valuesBucket_update, this.predicates).then((dataupdate) = > {
                    promptAction.showToast({
                      message: $r('app.string.update_success_toast')
                    });
                    hilog.info(domain, TAG, 'DAHelper update result: ' + dataupdate);
                  }).catch((error: BusinessError) = > {
                    promptAction.showToast({
                      message: $r('app.string.update_failed_toast')
                    });
                    hilog.error(domain, TAG, `DAHelper update failed. Cause: ${error.message}`);
                  });
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
  6. 調(diào)用query方法在指定的DataAbility子模塊中查找數(shù)據(jù)。

    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private columnArray = new Array('id', 'name', 'introduction');
      private predicates = new ohos_data_ability.DataAbilityPredicates();
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // callback方式調(diào)用:
                  this.predicates.equalTo('name', 'Rose');
                  this.DAHelper.query(this.uri, this.columnArray, this.predicates, (error, data) = > {
                    if (error && error.code !== 0) {
                      promptAction.showToast({
                        message: $r('app.string.query_failed_toast')
                      });
                      hilog.error(domain, TAG, `DAHelper query failed. Cause: ${error.message}`);
                    } else {
                      promptAction.showToast({
                        message: $r('app.string.query_success_toast')
                      });
                    }
                    // ResultSet是一個(gè)數(shù)據(jù)集合的游標(biāo),默認(rèn)指向第-1個(gè)記錄,有效的數(shù)據(jù)從0開始。
                    while (data.goToNextRow()) {
                      const id = data.getLong(data.getColumnIndex('id'));
                      const name = data.getString(data.getColumnIndex('name'));
                      const introduction = data.getString(data.getColumnIndex('introduction'));
                      hilog.info(domain, TAG, `DAHelper query result:id = [${id}], name = [${name}], introduction = [${introduction}]`);
                    }
                    // 釋放數(shù)據(jù)集的內(nèi)存
                    data.close();
                  }
                  );
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private columnArray = new Array('id', 'name', 'introduction');
      private predicates = new ohos_data_ability.DataAbilityPredicates();
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // promise方式調(diào)用(await需要在async方法中使用):
                  this.predicates.equalTo('name', 'Rose');
                  this.DAHelper.query(this.uri, this.columnArray, this.predicates).then((dataquery) = > {
                    promptAction.showToast({
                      message: $r('app.string.query_success_toast')
                    });
                    // ResultSet是一個(gè)數(shù)據(jù)集合的游標(biāo),默認(rèn)指向第-1個(gè)記錄,有效的數(shù)據(jù)從0開始。
                    while (dataquery.goToNextRow()) {
                      const id = dataquery.getLong(dataquery.getColumnIndex('id'));
                      const name = dataquery.getString(dataquery.getColumnIndex('name'));
                      const introduction = dataquery.getString(dataquery.getColumnIndex('introduction'));
                      hilog.info(domain, TAG, `DAHelper query result:id = [${id}], name = [${name}], introduction = [${introduction}]`);
                    }
                    // 釋放數(shù)據(jù)集的內(nèi)存
                    dataquery.close();
                  }).catch((error: BusinessError) = > {
                    promptAction.showToast({
                      message: $r('app.string.query_failed_toast')
                    });
                    hilog.error(domain, TAG, `DAHelper query failed. Cause: ${error.message}`);
                  });
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
  7. 調(diào)用batchInsert方法向指定的DataAbility子模塊批量插入數(shù)據(jù)。

    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private crowd = new Array({ name: 'Rose', introduction: 'batchInsert_one' } as rdb.ValuesBucket,
        { name: 'Rose', introduction: 'batchInsert_two' } as rdb.ValuesBucket);
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // callback方式調(diào)用:
                  this.DAHelper.batchInsert(this.uri, this.crowd, (error, data) = > {
                    if (error && error.code !== 0) {
                      promptAction.showToast({
                        message: $r('app.string.batchInsert_failed_toast')
                      });
                    } else {
                      promptAction.showToast({
                        message: $r('app.string.batchInsert_success_toast')
                      });
                    }
                    hilog.info(domain, TAG, 'DAHelper batchInsert result: ' + data + ', error: ' + JSON.stringify(error));
                  }
                  );
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private crowd = new Array({ name: 'Rose', introduction: 'batchInsert_one' } as rdb.ValuesBucket,
        { name: 'Rose', introduction: 'batchInsert_two' } as rdb.ValuesBucket);
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // promise方式調(diào)用(await需要在async方法中使用):
                  this.DAHelper.batchInsert(this.uri, this.crowd).then((databatchInsert) = > {
                    promptAction.showToast({
                      message: $r('app.string.batchInsert_success_toast')
                    });
                    hilog.info(domain, TAG, 'DAHelper batchInsert result: ' + databatchInsert);
                  }).catch((error: BusinessError) = > {
                    promptAction.showToast({
                      message: $r('app.string.batchInsert_failed_toast')
                    });
                    hilog.error(domain, TAG, `DAHelper batchInsert failed. Cause: ${error.message}`);
                  });
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    
  8. 調(diào)用executeBatch方法向指定的DataAbility子模塊進(jìn)行數(shù)據(jù)的批量處理。

    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private predicates = new ohos_data_ability.DataAbilityPredicates();
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // callback方式調(diào)用:
                  let operations: Array< ability.DataAbilityOperation > = [{
                    uri: this.uri,
                    type: featureAbility.DataAbilityOperationType.TYPE_INSERT,
                    valuesBucket: { name: 'Rose', introduction: 'executeBatch' },
                    predicates: this.predicates,
                    expectedCount: 0,
                    predicatesBackReferences: undefined,
                    interrupted: true,
                  }];
                  this.DAHelper.executeBatch(this.uri, operations, (error, data) = > {
                    if (error && error.code !== 0) {
                      promptAction.showToast({
                        message: $r('app.string.executeBatch_failed_toast')
                      });
                    } else {
                      promptAction.showToast({
                        message: $r('app.string.executeBatch_success_toast')
                      });
                    }
                    hilog.info(domain, TAG, `DAHelper executeBatch, result: ` + JSON.stringify(data) + ', error: ' + JSON.stringify(error));
                  });
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
       }
     }
    
    import ability from '@ohos.ability.ability';
    import featureAbility from '@ohos.ability.featureAbility';
    import { BusinessError } from '@ohos.base';
    import ohos_data_ability from '@ohos.data.dataAbility';
    import rdb from '@ohos.data.rdb';
    import promptAction from '@ohos.promptAction';
    import hilog from '@ohos.hilog';
    
    const TAG: string = 'PageDataAbility';
    const domain: number = 0xFF00;
    
    @Entry
    @Component
    struct PageDataAbility {
      private predicates = new ohos_data_ability.DataAbilityPredicates();
      private uri = 'dataability:///com.samples.famodelabilitydevelop.DataAbility';
      private DAHelper = featureAbility.acquireDataAbilityHelper(this.uri);
    
      build() {
        Column() {
          // ...
          List({ initialIndex: 0 }) {
            // ...
            ListItemGroup() {
              ListItem() {
                Flex({ justifyContent: FlexAlign.SpaceBetween, alignContent: FlexAlign.Center }) {
                  // ...
                }
                .onClick(() = > {
                  // promise方式調(diào)用(await需要在async方法中使用):
                  let operations: Array< ability.DataAbilityOperation > = [{
                    uri: this.uri,
                    type: featureAbility.DataAbilityOperationType.TYPE_INSERT,
                    valuesBucket: { name: 'Rose', introduction: 'executeBatch' },
                    predicates: this.predicates,
                    expectedCount: 0,
                    predicatesBackReferences: undefined,
                    interrupted: true,
                  }];
                  this.DAHelper.executeBatch(this.uri, operations).then((dataquery) = > {
                    promptAction.showToast({
                      message: $r('app.string.executeBatch_success_toast')
                    });
                    hilog.info(domain, TAG, 'DAHelper executeBatch result: ' + JSON.stringify(dataquery));
                  }).catch((error: BusinessError) = > {
                    promptAction.showToast({
                      message: $r('app.string.executeBatch_failed_toast')
                    });
                    hilog.error(domain, TAG, `DAHelper executeBatch failed. Cause: ${error.message}`);
                  });
                })
              }
              // ...
            }
            // ...
          }
          // ...
        }
        // ...
      }
    }
    

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 組件
    +關(guān)注

    關(guān)注

    1

    文章

    532

    瀏覽量

    18427
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    2621

    瀏覽量

    44072
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【HarmonyOS 5】鴻蒙頁面和組件生命周期函數(shù)

    【HarmonyOS 5】鴻蒙頁面和組件生命周期函數(shù) ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財(cái)
    的頭像 發(fā)表于 07-11 18:24 ?295次閱讀

    【HarmonyOS 5】金融應(yīng)用開發(fā)鴻蒙組件實(shí)踐

    【HarmonyOS 5】金融應(yīng)用開發(fā)鴻蒙組件實(shí)踐 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##
    的頭像 發(fā)表于 07-11 18:20 ?290次閱讀
    【HarmonyOS 5】金融應(yīng)用<b class='flag-5'>開發(fā)</b><b class='flag-5'>鴻蒙</b><b class='flag-5'>組件</b>實(shí)踐

    使用DevEcoStudio 開發(fā)、編譯鴻蒙 NEXT_APP 以及使用中文插件

    的一站式集成開發(fā)環(huán)境(IDE),專為鴻蒙操作系統(tǒng)(HarmonyOS Next)應(yīng)用和服務(wù)開發(fā)設(shè)計(jì) DevEco Studio,掌握基本操作和開發(fā)流程。 ## 2. 安裝與配置 1
    發(fā)表于 06-11 17:18

    FA模型的DataAbility的切換介紹

    ,開發(fā)者需根據(jù)業(yè)務(wù)功能重新實(shí)現(xiàn)。 三方應(yīng)用DataAbility改造為公共模塊 Stage模型三方應(yīng)用不能對(duì)其他三方提供數(shù)據(jù),應(yīng)用需要根據(jù)具體業(yè)務(wù)選擇切換方案。 DataAbility業(yè)務(wù)類型切換
    發(fā)表于 06-06 08:10

    開源鴻蒙應(yīng)用技術(shù)組件共建計(jì)劃啟動(dòng)

    近日,開源鴻蒙開發(fā)者大會(huì)2025(OHDC.2025,以下簡(jiǎn)稱“大會(huì)”)在深圳成功舉辦。開源四年多來,開源鴻蒙代碼規(guī)模已達(dá) 1.3 億多行,代碼貢獻(xiàn)者達(dá) 8600 多位,超過 1100 款軟硬件產(chǎn)品
    的頭像 發(fā)表于 06-05 14:33 ?443次閱讀

    FA模型訪問Stage模型DataShareExtensionAbility說明

    DataShareHelper的接口。但是這種方法需要開發(fā)者修改原客戶端代碼的URI,做不到無感知切換。 因此DataAbilityHelper不能僅依賴URI的前綴決定訪問DataAbility還是
    發(fā)表于 06-04 07:53

    潤和軟件旗下潤開鴻亮相開源鴻蒙開發(fā)者大會(huì)2025

    近日,開源鴻蒙開發(fā)者大會(huì)2025(OHDC.2025)于深圳再啟新篇,會(huì)上正式發(fā)布了開源鴻蒙5.1 Release版本,并進(jìn)行開源鴻蒙應(yīng)用技術(shù)組件
    的頭像 發(fā)表于 06-03 16:22 ?618次閱讀

    迅龍軟件應(yīng)邀出席開源鴻蒙開發(fā)者大會(huì)2025,AI分論壇發(fā)表主旨演講

    5月24日,開源鴻蒙開發(fā)者大會(huì)2025(OHDC.2025)在深圳隆重開幕。會(huì)上正式發(fā)布了開源鴻蒙5.1Release版本,并進(jìn)行開源鴻蒙應(yīng)用技術(shù)
    的頭像 發(fā)表于 05-28 16:05 ?422次閱讀
    迅龍軟件應(yīng)邀出席開源<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>者大會(huì)2025,AI分論壇發(fā)表主旨演講

    DataAbility組件概述介紹

    DataAbility組件概述 DataAbility,即\"使用Data模板的Ability\",主要用于對(duì)外部提供統(tǒng)一的數(shù)據(jù)訪問抽象,不提供用戶交互界面
    發(fā)表于 05-28 08:19

    2025開源鴻蒙開發(fā)者大會(huì)圓滿落幕

    近日,開源鴻蒙開發(fā)者大會(huì)2025(OHDC.2025,簡(jiǎn)稱“大會(huì)”)在深圳隆重開幕。大會(huì)正式發(fā)布了開源鴻蒙5.1 Release版本,舉行了開源鴻蒙應(yīng)用技術(shù)
    的頭像 發(fā)表于 05-26 17:03 ?586次閱讀

    “RdbStore”上線開源鴻蒙社區(qū) 助力鴻蒙應(yīng)用數(shù)據(jù)訪問效率大幅提升

    、品質(zhì)調(diào)優(yōu)、全鏈路運(yùn)維等,能夠有效提升應(yīng)用啟動(dòng)訪問速度,助力應(yīng)用高效開發(fā)和性能提升。 性能強(qiáng)大:數(shù)據(jù)訪問和初始化耗時(shí)大幅優(yōu)化 在應(yīng)用開發(fā)
    的頭像 發(fā)表于 03-18 15:02 ?347次閱讀

    開源啦!??!基于鴻蒙ArkTS封裝的圖表組件《McCharts》,大家快來一起共創(chuàng)

    的地方請(qǐng)大家高抬貴手,寬容一下,謝謝。 這次主要是給大家?guī)硪粋€(gè)重磅消息,就是我自己使用鴻蒙ArkTS語法開發(fā)的圖表組件今日正式開源了。為什么?原因有兩點(diǎn)吧! 鴻蒙是國產(chǎn)的操作系統(tǒng),
    發(fā)表于 03-15 15:21

    SQLite數(shù)據(jù)訪問組件

    SQLite 數(shù)據(jù)訪問組件 SQLite 數(shù)據(jù)訪問組件 (LiteDAC) 是一個(gè)組件庫 它提供從 Delphi 和 C++ Builder
    的頭像 發(fā)表于 02-08 11:48 ?482次閱讀
    SQLite數(shù)據(jù)<b class='flag-5'>訪問</b><b class='flag-5'>組件</b>

    InterBase和Firebird數(shù)據(jù)訪問組件介紹

    InterBase 和 Firebird 數(shù)據(jù)訪問組件 InterBase(和 Firebird)數(shù)據(jù)訪問組件 (IBDAC) 是一個(gè)庫 提供與 InterBase 和 Firebir
    的頭像 發(fā)表于 01-23 11:50 ?512次閱讀
    InterBase和Firebird數(shù)據(jù)<b class='flag-5'>訪問</b><b class='flag-5'>組件</b>介紹

    鴻蒙原生頁面高性能解決方案上線OpenHarmony社區(qū) 助力打造高性能原生應(yīng)用

    高性能鴻蒙原生應(yīng)用。 Nodepool:優(yōu)化頁面滑動(dòng)流暢性Nodepool旨在解決應(yīng)用頁面滑動(dòng)卡頓問題。開發(fā)中,相似頁面因業(yè)務(wù)和代碼差異,組件復(fù)用性差,引發(fā)卡頓、丟幀,影響用戶體驗(yàn)。Nodepool通過
    發(fā)表于 01-02 18:00