微信云小程序快速上手云数据库+云函数+云存储的操作

🚀 作者 :“二当家-小D”

🚀 博主简介:⭐前荔枝FM架构师、阿里资深工程师||曾任职于阿里巴巴担任多个项目负责人,8年开发架构经验,精通java,擅长分布式高并发架构,自动化压力测试,微服务容器化k8s等

🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬

🍅文末获取源码联系 配套笔记打包🍅

目录

一、云数据库—不同类型的数据设计

1.1不同类型的数据设计

二、云数据库—获取云数据库的初始化

2.1获取云数据库的初始化—小程序端

2.2获取云数据库初始化—云函数

三、云数据库—调用云函数增加数据

3.1调用云函数增加数据

四、云数据库—调用云函数删除数据

4.1调用云函数删除⼀条数据

4.2调用云函数删除多条数据

五、云数据库—调用云函数更改数据

5.1调用云函数更改数据

5.2原子字段自增

六、云数据库—调用云函数查询数据

6.1调用云函数查询数据

七、云函数本地调试获取数据

7.1云函数本地调试获取数据

八、云存储上传本地图片

8.1云存储上传本地图片

九、云存储下载图片+删除图片

9.1云存储下载图片+删除图片

结束语


一、云数据库—不同类型的数据设计

1.1不同类型的数据设计

二、云数据库—获取云数据库的初始化

2.1获取云数据库的初始化—小程序端
  • 获取默认环境的数据库引用
const db = wx.cloud.database()
  • 获取集合的引⽤
const collection = db.collection('test');
  • 获取集合的数据
const list = collection.get()
  • 示例
    getList() {
      const db = wx.cloud.database()
      const collection = db.collection('test');
      collection.get({
        success:(res)=>{
          console.log(res)
        }
      })
    },
  • 注意:不能全量查询,查询数据的权限比较低
2.2获取云数据库初始化—云函数
 // 云函数入口文件
  const cloud = require('wx-server-sdk')
  
  cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) // 使用当前云环境
  
  const db = cloud.database();
  const collection = db.collection('test');
  
  // 云函数入口函数
  exports.main = async (event, context) => {
    return await collection.get()
  }

三、云数据库—调用云函数增加数据

3.1调用云函数增加数据
  // 云函数入口文件
  const cloud = require('wx-server-sdk')
  
  cloud.init({
    env: cloud.DYNAMIC_CURRENT_ENV
  }) // 使用当前云环境
  const db = cloud.database()
  const collection = db.collection('test')
  
  // 云函数入口函数
  exports.main = async (event, context) => {
    return await collection.add({
      data: {
        title: '小弟课堂云小程序课程',
        value: '小程序数据库的增加操作'
      }
    })
  }

四、云数据库—调用云函数删除数据

4.1调用云函数删除⼀条数据
  // 云函数入口文件
  const cloud = require('wx-server-sdk')
  
  cloud.init({
    env: cloud.DYNAMIC_CURRENT_ENV
  }) // 使用当前云环境
  const db = cloud.database()
  const collection = db.collection('test')
  
  // 云函数入口函数
  exports.main = async (event, context) => {
    return await collection.doc('e67013a466290e2300b6ffb23e00cb0a').remove()
  }
4.2调用云函数删除多条数据
// 云函数⼊⼝⽂件
const cloud = require('wx-server-sdk')
cloud.init({
 env: cloud.DYNAMIC_CURRENT_ENV
}) // 使⽤当前云环境
const db = cloud.database()
const collection = db.collection('test')
// 云函数⼊⼝函数
exports.main = async (event, context) => {
 return await collection.where({ del:0 }).remove()
}

五、云数据库—调用云函数更改数据

5.1调用云函数更改数据
// 云函数入口文件
const cloud = require('wx-server-sdk')

cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
}) // 使用当前云环境
const db = cloud.database()
const collection = db.collection('test')

// 云函数入口函数
exports.main = async (event, context) => {
  return await collection('test').doc('40fc38da66290efd00b68afe4974e894')
  .update({
    data: {
      value: 'css'
    }
  })
}
5.2原子字段自增
// 云函数入口文件
const cloud = require('wx-server-sdk')

cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
}) // 使用当前云环境
const db = cloud.database()
const collection = db.collection('test')
const _ = db.command

// 云函数入口函数
exports.main = async (event, context) => {
  return await collection('test').doc('40fc38da66290efd00b68afe4974e894')
    .update({
      data: {
        price: _.inc(10)
      }
    })
}

六、云数据库—调用云函数查询数据

6.1调用云函数查询数据
// 云函数入口文件
const cloud = require('wx-server-sdk')

cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
}) // 使用当前云环境
const db = cloud.database()
const collection = db.collection('test')
const _ = db.command

// 云函数入口函数
exports.main = async (event, context) => {
  return await collection.where({
    price: _.gt(30)
  }).get()
}

七、云函数本地调试获取数据

7.1云函数本地调试获取数据

八、云存储上传本地图片

8.1云存储上传本地图片
wx.chooseMedia({
  success:res=>{
    console.log(res)
    console.log(res.tempFiles[0].tempFilePath)
    wx.cloud.uploadFile({
      cloudPath: 'xd.png', // 上传至云端的路径
      filePath:res.tempFiles[0].tempFilePath, // 小程序临时文件路径
      success: res => {
        // 返回文件 ID
        console.log(res.fileID)
      },
      fail: err => {
        console.log(err)
      }
    })
  }
})

九、云存储下载图片+删除图片

9.1云存储下载图片+删除图片
wx.cloud.downloadFile({
  fileID: 'cloud://xdclass-6ggz6mqu20bbca81.7864-xdclass-6ggz6mqu20bbca81-1325634077/111.jpg', // 文件 ID
  success: res => {
    // 返回临时文件路径
    console.log(res.tempFilePath)
  },
  fail: console.error
})
wx.cloud.deleteFile({
  fileList: ['cloud://xdclass-6ggz6mqu20bbca81.7864-xdclass-6ggz6mqu20bbca81-1325634077/111.jpg'],
  success: res => {
    // handle success
    console.log(res.fileList)
  },
  fail: console.error
})

结束语

今天的内容讲述了云数据库在小程序开发中的应用,包括不同类型的数据设计、获取初始化、增加、删除、更改以及查询数据等方面。通过调用云函数,我们可以实现对数据库的各种操作,为小程序提供了强大的数据支持和管理能力。此外,还介绍了云存储上传本地图片和下载、删除图片的操作,为小程序的多媒体文件管理提供了便利。希望本文对您在小程序开发中的数据库和存储操作有所帮助。敬请期待下一篇文章,我们将继续分享更多有关小程序开发的实用技巧和经验。

今天的文章就到这里了,还有更多内容下次继续。

资料获取📚
完整代码和笔记已经准备好,如果有问题,可以在评论区留言讨论💬
原创不易,别忘了点赞👍+收藏⭐哦!
点击下方链接即可获取完整资料压缩包🎁,快来领取吧!↓↓↓↓

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/604422.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

探索Java的未来

探索 Java 的未来是一个非常有趣的话题。Java 是一种广泛使用的编程语言,自 1995 年诞生以来,它已经在软件开发领域占据了重要的地位。尽管有些人担心 Java 可能会因为新技术的出现而变得不再相关,但实际情况并非如此。让我们来看看一些关于 …

Python | Leetcode Python题解之第69题x的平方根

题目&#xff1a; 题解&#xff1a; class Solution:def mySqrt(self, x: int) -> int:if x 0:return 0C, x0 float(x), float(x)while True:xi 0.5 * (x0 C / x0)if abs(x0 - xi) < 1e-7:breakx0 xireturn int(x0)

AI Agent智能应用从0到1定制开发(wanjie)

AI Agent&#xff08;人工智能体&#xff09;是一种能够感知环境、进行决策和执行动作的智能实体。不同于传统的人工智能&#xff0c;AI Agent 具备通过独立思考、调用工具去逐步完成给定目标的能力。 「完结12章」AI Agent智能应用从0到1定制开发 AI Agent 和大模型的区别在…

Windows 虚机扩容C盘

Windows 虚机扩容C盘 操作思路1、新增磁盘容量2、划分磁盘空间3、扩容对应盘 操作步骤 操作思路 1、新增磁盘容量 2、划分磁盘空间 3、扩容对应盘 操作步骤 1、虚机新增磁盘空间 先确认宿主机是否有足够空间&#xff0c;有足够空间后&#xff0c;编辑虚机&#xff0c;增加…

【3D目标检测】常见相关指标说明

一、mAP指标 mean Average Precision&#xff08;平均精度均值&#xff09;&#xff0c;它是目标检测和信息检索等任务中的重要性能指标。mAP 通过综合考虑精度和召回率来衡量模型的总体性能。 1.1 精度&#xff08;Precision&#xff09; 表示检索到的目标中实际为正确目标…

嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~

随着物联网和智能设备的快速发展&#xff0c;嵌入式开发和鸿蒙系统成为了当前技术领域的热门话题。鸿蒙系统作为华为推出的全场景分布式操作系统&#xff0c;旨在连接各种智能设备&#xff0c;提供无缝的跨设备体验。而南向开发则是鸿蒙系统中的一个重要方向&#xff0c;主要涉…

长难句打卡5.6

For H&M to offer a $5.95 knit miniskirt in all its 2,300-plus stores around the world, it must rely on low-wage overseas labor, order in volumes that strain natural resources, and use massive amounts of harmful chemicals. 翻译:H&M若要在其全球总共2…

OpenCV|简单绘制一个矩形

OpenCV中的rectangle() 为绘制矩形命令&#xff0c;形式如下&#xff1a; # (img: cv2.typing.MatLike, pt1: cv2.typing.Point, pt2: cv2.typing.Point, color: cv2.typing.Scalar, thickness: int ..., lineType: int ..., shift: int ...)cv2.rectangle(img, pt1, pt2, …

【R语言】生存分析模型

生存分析模型是用于研究时间至某个事件发生的概率的统计模型。这个事件可以是死亡、疾病复发、治疗失败等。生存分析模型旨在解决在研究时间相关数据时的挑战&#xff0c;例如右侧截尾&#xff08;右侧截尾表示未观察到的事件发生&#xff0c;例如研究结束时还未发生事件&#…

Django-新冠疫情数据分析系统-67684

目 录 摘要 1 绪论 1.1 研究背景 1.2论文结构与章节安排 2 新冠疫情数据分析系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据增加流程 2.2.2 数据修改流程 2.2.3 数据删除流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.2 非功能性分析 2.4 系统用例分析…

Stuff Error的解决办法

Stuff Error的解决办法 一、问题描述 在使用CANoe、CANalyzer设备做一些总线CAN信号的通信测试过程中&#xff0c;会出现Stuff Error这类的错误&#xff0c;具体trace如下&#xff1a; 二、解决办法 错误原因&#xff1a;Stuff Error通常是物理原因引起的 常见的解决方案有…

Jmeter用jdbc实现对数据库的操作

我们在用Jmeter进行数据库的操作时需要用到配置组件“JDBC Connection Configuration”&#xff0c;通过配置相应的驱动能够让我们通过Jmeter实现对数据库的增删改查&#xff0c;这里我用的mysql数据库一起来看下是怎么实现的吧。 1.驱动包安装 在安装驱动之前我们要先查看当前…

Redis(主从复制搭建)

文章目录 1.主从复制示意图2.搭建一主多从1.搭建规划三台机器&#xff08;一主二从&#xff09;2.将两台从Redis服务都按照同样的方式配置&#xff08;可以理解为Redis初始化&#xff09;1.安装Redis1.yum安装gcc2.查看gcc版本3.将redis6.2.6上传到/opt目录下4.进入/opt目录下然…

ACM实训冲刺第一天

目录 ACM实训课程考核 考核内容 备赛安排 推荐学习资源 ACM实训准备规划 前话 历届习题&#xff08;未曾改变&#xff09; 第0套 第1套 第2套 第3套 第4套 规划 5.8 - 5.12 &#xff08;11周&#xff09; 5.13-5.19&#xff08;12周&#xff09; 5.20-5.26&…

解放双手,利用自动点赞软件提高曝光度

在数字时代&#xff0c;社交媒体如同一片繁茂的森林&#xff0c;每一条动态、每一张照片都是树上挂着的果实&#xff0c;而点赞则仿佛是那些吸引眼球的色彩。在这个以流量为王的网络世界里&#xff0c;点赞数往往与内容的可见度直接相关&#xff0c;它不仅能够增加帖子的权重&a…

智能家居4 -- 添加接收消息的初步处理

这一模块的思路和前面的语言控制模块很相似&#xff0c;差别只是调用TCP 去控制 废话少说&#xff0c;放码过来 增添/修改代码 receive_interface.c #include <pthread.h> #include <mqueue.h> #include <string.h> #include <errno.h> #include <…

渐进淡出背景个人导航页源码(火影版)

渐进淡出背景个人导航页源码&#xff08;火影版&#xff09; 效果图部分源码领取源码下期更新预报 效果图 部分源码 <!DOCTYPE html> <html> <head> <!--小K网 www.xkwo.com --><meta charset"UTF-8"><title>火影版个人主页<…

如果出现一个工具,可以让前端开发彻底不用再手写UI,这个工具意义大吗?干货!

求这样的一个工具&#xff0c;可以让后端开发、嵌入式开发、产品经理、UI设计师都能用&#xff0c;注意&#xff0c;不是在一个简单的静态页生成&#xff0c;也不是类似飞冰那种 generator &#xff0c;而是真正让设计师和开发者在各自的那侧达成自治&#xff0c;可以做到吗&am…

异构图神经网络——Heterogeneous Graph Neural Networks

相关代码见文末 1.回顾同构图 1.1 GNN GNN基本计算方法——邻接矩阵乘以节点,聚合相邻节点的特征,得到本节点的特征表达 1.2 Graph Attention Network 引入图注意力,实现边的权重可学习,最简单的方法是,将两个节点的特征进行拼接,使用一组可学习的权重参数映射为边的权…

搜狗输入法 PC端 v14.4.0.9307 去广告绿化版.

软件介绍 搜狗拼音输入法作为众多用户计算机配置的必备工具&#xff0c;其功能的全面性已为众所周知&#xff0c;并且以其高效便捷的输入体验受到广大使用者的青睐。然而&#xff0c;该软件在提供便利的同时&#xff0c;其内置的广告元素常常为用户带来一定的干扰。为此&#…
最新文章