• 关于小程序云开发数据库的增删改查操作


    先初始化数据库

    const db = wx.cloud.database()

    1. 插入操作

        // collection('user') 获取到数据库中名为 user 的集合
        // add 插入操作
        db.collection('user').add({
          // 要插入的数据
          data: {
            name: 'Tom',
            age: 18
          }
        }).then(res => {
          // 插入数据成功
          console.log(res)
        }).catch(err => {
          // 插入数据失败
          console.log(err)
        })

    注意:

    插入数据库的数据为额外有两个id:_id(数据的主键id),_openid(这条数据的创建者的openid);

    直接从云数据库控制台插入的数据是没有openid的

    2. 查询操作

        // where 查询操作
        db.collection('user').where({
          // 查询条件
          name: 'Tom'
        })
        .get()
        .then(res => {
          // 查询数据成功
          console.log(res)
        }).catch(err => {
          // 查询数据失败
          console.log(err)
        })

    3. 更新操作

        // update 更新操作
        // primary key 要更新的那条数据的主键id
        db.collection('user').doc('primary key')
        .update({
          // 想要更新后的数据
          data: {
            age: 20
          }
        }).then(res => {
          // 更新数据成功
          console.log(res)
        }).catch(err => {
          // 更新数据失败
          console.log(err)
        })

    4. 删除操作

        // remove 删除操作
        // primary key 要删除的那条数据的主键id
        db.collection('user').doc('primary key')
        .remove()
        .then(res => {
          // 删除数据成功
          console.log(res)
        }).catch(err => {
          // 删除数据失败
          console.log(err)
        })

    注意:此方法只适用于一次删除一条数据,若想实现批量删除数据,则要使用云函数,如下

    5. 使用云函数批量删除数据

    5.1 新建云函数(batchDelete),在云函数的入口文件中 

    // 云函数入口文件
    const cloud = require('wx-server-sdk')
    // 初始化云数据库
    const db = wx.cloud.database()
    
    cloud.init()
    
    // 云函数入口函数
    exports.main = async (event, context) => {
      try {
        // 找到集合user中name为Tom的数据并remove删除
        // 因为数据库删除是异步操作,所以要加await
        return await db.collection('user').where({
          name: 'jane'
        }).remove()
      } catch (err) {
        console.error(err)
      }
    }

    注意:云函数创建或有任何修改后,都需要手动部署到云端后才可生效

    5.2 在page的js中调用这个云函数

    // callFunction 调用云函数
    wx.cloud.callFunction({
      // 云函数名称
      name: 'batchDelete'
    }).then(res => {
      console.log(res)
    }).catch(err => {
      console.error(err)
    })
  • 相关阅读:
    我在D2讲演的视频,已经可以下载了~
    走出海量数据及访问量压力困境
    博客作者应该学习的15个国外博客
    如何将jsp动态网页转换成静态页面
    新一代网络模式Web 2.0火爆发展
    数据库设计中的14个关键技巧
    如何进行RSS推广
    运用RUP 4+1视图方法进行软件架构设计
    02java关键词变量类型
    03java运算符函数
  • 原文地址:https://www.cnblogs.com/jane2160/p/11806526.html
Copyright © 2020-2023  润新知