当前位置: 首页 > news >正文

鸿蒙端云一体化开发之创建和操作数据库

上一篇文章中分享了鸿蒙端云一体化开发的基础教程,今天分享一下对云数据库的操作。

创建数据库

操作数据库的前提就是要创建数据库,创建数据库有两种方式,一种是在AGC云端手动创建,并同步到项目中,另一种是在项目中使用代码创建并上传到远程,我们先看一下第一种方式。

登录AGC,打开开发与服务,在云数据库中创建表并添加字段,然后设置主键、索引等信息,鸿蒙的数据比传统的mysql等数据库要简单明了的多,创建完成之后回到项目中在云侧项目下的clouddb文件夹右键选择Sync Cloud DB,将数据库同步到项目中,

我们会看到文件中增加了数据库对应的Json文件,这样一个数据表就创建完成了。

刚才说的第二种创建方式其实就是第一种方式的反向操作,先在项目中创建数据库Json文件,编辑完所有的字段和属性后右键选择Deploy就会把数据库上传到云端。

添加依赖

操作数据库也有两种方式,一种是在云侧项目中操作,一种是在端侧项目中操作,鸿蒙官方以及幽蓝君都更推荐大家在云侧操作数据库,再在端侧调用云函数。

在此之前我们还需要进行一些配置操作,首先创建一个云函数,然后在package.json文件中添加两个依赖,添加之后点击立即同步。

"@hw-agconnect/cloud-server": "^1.0.2",
"cloud-server": "latest"

接下来在刚才同步来的数据库json文件右键,选择Generate Server model到创建好的云函数文件夹,然后云函数文件夹会新增一个数据库对应的ts文件。

再接下来,在云函数中引入依赖和数据库模型文件:

import {cloud} from '@hw-agconnect/cloud-server'
import {User} from './User'

添加数据

现在终于到操作数据库的环节,我们已经添加数据为例,演示在云侧如何连接和操作数据库,在鸿蒙的云数据库中,添加和更新操作都推荐大家使用upsert方法:

try {// 创建与云数据库的连接let connect = cloud.database({zoneName:'Table'}).collection(User)let user = new User();user.id = Date.now().toString()user.name = '张三'let num = await connect.upsert([member]);callback({code:200,flag:true,message:"成功",data:member})}catch (e){callback({code:500,flag:false,message:"failed"+e,data:null})
}

右键执行云函数,回到AGC云数据库可以看到新增了一条数据。

以上就是端云一体化项目中关于数据库的操作,感谢阅读。

http://www.dtcms.com/a/297594.html

相关文章:

  • 内存 管理
  • 重读《人件》Peopleware -(22)Ⅲ 适当人选 Ⅵ 乐在其中(上)
  • 微服务架构中的资源调度与负载均衡实践
  • 股指期权可以随时平仓吗?
  • OSPF之多区域
  • cha的操作
  • 每日面试题14:CMS与G1垃圾回收器的区别
  • 2025.07.25【宏基因组】|PathoScope 安装与使用指南
  • Flink 自定义类加载器和子优先类加载策略
  • 编程与数学 03-002 计算机网络 04_数据链路层功能
  • 前端-html+CSS基础到高级(一)html基础
  • centos7安装docker命令
  • Kotlin 数据容器 - List(List 概述、创建 List、List 核心特性、List 元素访问、List 遍历)
  • 论文Review Registration TEASER | TRO | MIT出品,点云配准经典BenchMark | 硬核的数学长文
  • 一文读懂 Doris 冷热分离,优化存储与查询性能
  • Java 大视界 -- Java 大数据机器学习模型在金融衍生品市场波动特征挖掘与交易策略创新中的应用(363)
  • 初识决策树-理论部分
  • [python][flask]flask静态资源
  • OSPF 路由协议多区域
  • C++中new和delete的多重面孔:operator new、new operator与placement new解析
  • Qwen-MT:翻得快,译得巧
  • 【C#学习Day12笔记】抽象类、密封类与子类构造(继承)
  • 有关于k8s中的CSI和CRI的有关知识
  • 梳理一些 Docker 常用命令
  • zabbix服务自动发现、自动注册及配置钉钉告警(小白的“升级打怪”成长之路)
  • OT82111_VC1:USB OTG音频解码器固件技术解析
  • 再谈fpga开发(状态机的应用)
  • 钉钉换帅后,先砍自己人
  • 详解软件需求中的外部接口需求
  • 【前端】JavaScript文件压缩指南