微信小程序云开发新手教程——数据库的增删改查

利用微信小程序云开发提供的数据库,可以对进行微信小程序的一些基本的数据管理,本片文章将从最基本的使用操作入手,介绍如何用云开发数据库API进行数据库的增删改查。

创建集合

  • 如果你初次使用数据库,首先要创建一个数据库collection,才能进行数据的管理和调用。创建集合方法如下:打开微信开发者工具,点击云开发,在云开发控制台中点击数据库,在集合名称右侧的加号进行集合创建。在这里插入图片描述
  • 在实际使用中,具体要创建多少个数据库集合,由微信小程序具体使用所决定。
  • 在创建好后,需要对集合的权限进行设置。在当前页面点击权限设置。
    在这里插入图片描述
  • 权限共有四种,默认权限为仅创建者可读写,不同的权限会影响数据库集合内数据能否被对应用户所调用。在四种权限中,没有提供所有用户可以进行读写的权限,不过可以通过微信云函数调用数据库API实现,在文章最后的注意事项中会有提到。

增添记录

collection.add函数,为数据库对应集合写入一条新的记录。

  • 在添加数据时,需要提供对应的集合名称,在文章之后所有代码中,集合名称以name代替。在使用时,替换为自己创建时命名的集合名称即可。
// collection.add函数
wx.cloud.database().collection('name').add({
      // data 字段表示需新增的 JSON 数据
      data: {
        description: "wechat cloud database",
        tag: 1,
      },
      success: res => {
        console.log("success!")
      }
    })
  • 每条记录都会有一个id字段和对应添加人的openid。如果在添加时没有自己添加记录的id,系统会为新添加的记录自动生成唯一的id。

查找记录

collection.get函数,查找对应集合中符合条件的记录。可以通过where()确定符合的条件,或通过doc()匹配对应记录的id。

// collection.get函数
wx.cloud.database().collection('name').where({
	  // where内容代表想要查找的字段和对应的值
	  tag: 1,
	}).get({
	  success: res => {
	    // 成功查找后,将符合条件的记录console出来
	    console.log(res)
	  }
	})
  • 在查找匹配内容时,可以通过正则表达式或其他函数对字段进行匹配,这里将不做过多介绍。
  • 如果是在.js文件中直接调用数据库API时,不建议将用户openid作为where的查找字段,会与集合的权限冲突,当权限为 所有用户可读,创建者可读写 时,用户并不能通过openid字段读取到其他用户的记录。
  • 如果需要通过openid查找其他用户记录,可以通过云函数实现,在文章最后注意事项中会有介绍。

修改记录

  • collection.update函数,修改或更新已经存在的记录。在.js文件中直接调用数据库API时,只能通过doc()匹配对应记录id进行修改。
// collection.update函数
// 输入对应集合和记录的id,以修改记录
wx.cloud.database().collection('name').doc('id').update({
      // 要修改的内容
      data: {
        tag: 2,
      },
      success: res => {
        console.log('success!')
      }
    })
  • 通过where()查找对应匹配字段修改记录,可以通过云函数调用数据库进行实现。

删除记录

  • collection.remove函数,删除已存在的记录。在.js文件中直接调用数据库API时,只能通过doc()匹配对应记录id进行修改。
// collection.remove函数
// 输入对应集合和记录的id,以删除记录
wx.cloud.database().collection('name').doc('id').remove({
      success: res => {
        console.log('success!')
      }
    })
  • 通过where()查找对应匹配字段删除记录,可以通过云函数调用数据库进行实现。

注意事项

  1. 在大部分的数据库函数使用时,会在.js文档的最开头进行如下声明
    const db = wx.cloud.database()
    
    在大部分教程和开发者文档中,是通过db.collection()这类的简写,直接对数据库函数进行调用的。
  2. 在.js文件中直接调用数据库API,相当于只拥有当前某个用户的权限。如果想要实现某一用户对其他用户创建数据进行修改(即获得操作数据库的管理员权限),请通过云函数调用数据库API进行数据库增删改查,具体的实现方法会在我的另一篇文章中介绍(尽请期待)
  3. 关于数据库的其他操作还有很多,除了微信开发者文档可以进行资料查阅,这里还推荐W3Cschool的微信小程序开发文档进行参考,可以在入门微信云开发时多查阅这两个文档,可以得到快速的能力提升。
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值