HarmonyOS 数据持久化 关系型数据库之 增删改逻辑编写

好 上文 HarmonyOS 数据持久化 关系型数据库之 初始化操作 我们讲了 关系型数据库初始化
那么 本文 我们来编写 增删改 相关代码
打开我们的项目 打开到 我们之前写的这个 relationalClass 类
在这里插入图片描述
然后 我们在 initTaskDB 下面再定义一个函数 叫 addTask 的函数 用来执行添加逻辑
直接编写代码如下

//添加表数据
addTask(name:string):Promise<number> {
    //调用rdbStore对象中的 insert  返回 添加进入的id
	return this.rdbStore.insert("TASK",{
		name,
		finished: false
	})
}

首先 我们函数 接受一个字符串类型的name 字段 没错 名字要从外面传进来
然后 我们直接通过存起来的 rdbStore 对象 调用 insert 函数
这个函数接收两个参数 第一个字符串类型 就是 表名 我们的表叫 TASK
然后 第二个参数 是要添加的值 键值对
第一个 name 我们直接从外面传进来
然后 第二个 finished 我们新加的 就赋值为false吧
然后 id因为 我们上文已经加了 AUTOINCREMENT 它会自动增长 不需要我们管

然后 这个函数 是异步的 成功回调后 会返回添加的这条数据的id
这里 我懒得处理了 直接返回回去 Promise

就这么简单 我们新增的就搞定了

然后 我们在下面再加一个 updateTask update顾名思义 修改的函数
编写代码如下

//根据id修改数据
updateTask(id:number,finished: boolean) {
  //传入表名 获取 predicates 对象
  let predicates = new relationalStore.RdbPredicates("TASK")
  // 通过 predicates 对象 调用 equalTo 编写修改添加  改ID匹配上的那一条
  predicates.equalTo('ID',id)
  //通过  rdbStore 调用update 执行修改操作  接受 一个对象 既要修改的字段和值  predicates
  return this.rdbStore.update({
    finished
  },predicates)
}

这里 我们接收两个参数 id和finished
先 new 一个 predicates 对象 RdbPredicates函数接收表名作为参数 告诉它 你要修改哪张表
然后 用 predicates 对象调用 equalTo 传入修改的添加 通过 ID匹配我们传入的id
然后 最后 通过 rdbStore 调用 update
第一个参数 是个对象 指定我们要修改的字段 我们只修改finished 值是从外面传进来的
然后 第二个参数 predicates 就是我们new出来的那个
最后 返回值 我们直接让它返回出去 让调用这个方法的地方处理

修改会写了 那删除就很简单了
在下面再来一个函数
deleteTask
我们编写代码如下

//删除操作
deleteTask(id: number) {
  //传入表名 获取 predicates 对象
  let predicates = new relationalStore.RdbPredicates("TASK")
  // 通过 predicates 对象 调用 equalTo 编写删除条件  删ID匹配上的那一条
  predicates.equalTo('ID',id)
  //调用 delete 删除方法 只需要传入条件
  return this.rdbStore.delete(predicates)
}

这里 我们编写条件的方式 和 修改是一模一样的
然后 调用delete 函数 进行删除

好啦 那增删改 都搞定啦

相关推荐

  1. HarmonyOs开发:关系数据库封装增删

    2024-03-10 01:38:02       8 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-10 01:38:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-10 01:38:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-10 01:38:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-10 01:38:02       20 阅读

热门阅读

  1. 用 reduce 实现 map 的功能

    2024-03-10 01:38:02       25 阅读
  2. 【C#语言入门】13. 表达式、语句详解(3)

    2024-03-10 01:38:02       24 阅读
  3. 基于单片机的输液监测系统设计与实现

    2024-03-10 01:38:02       22 阅读
  4. 鸿蒙崛起:能否颠覆安卓霸主地位?

    2024-03-10 01:38:02       22 阅读
  5. mongodb的备份与恢复

    2024-03-10 01:38:02       22 阅读
  6. python中的模块和包

    2024-03-10 01:38:02       25 阅读
  7. el-aside中添加el-menu设置collapse宽度自适应

    2024-03-10 01:38:02       23 阅读