微信小程序开发笔记(1.3)云数据库的使用

本文介绍了微信小程序中云数据库的使用,包括数据导入导出、基本操作如增删改查,强调了权限设置和查询限制,提供了实现模糊查询的技巧。
摘要由CSDN通过智能技术生成

微信小程序开发笔记(1.3)微信云数据库的使用

前言

微信小程序云开发主要包括云数据库和云函数的使用。虽然小程序端也可以直接使用云数据库,但是有一些方法是只在云函数中支持的。
but,云函数我还没有怎么使用过,因此本篇的代码仅适用于小程序端。

官方文档:微信官方文档-数据库

数据的导入与导出

云开发提供的是一个文档型数据库,里面存储的是JSON格式的数据。里面的每一个集合相当于关系型数据库的一个表,一个记录相当于关系型数据库的一行,而记录里的每一个字段相当于关系型数据库的一列。

假如数据是JSON格式的文件,可以直接导入。但是有个坑要注意:以官方文档所提供的这两个JSON数据为例,如果直接复制它的数据,然后建立一个.JSON的文件,直接导入,是会报解析文档的错误的;要把集合最外圈的 [ ] 号和每个对象之间的 , 号都删掉才可以导入成功。

img_1

集合可以直接导出成JSON文件,观察它导出来的文件,可以发现跟我们导入的文件格式是一样的:没有每个对象之间的 , 号和最外层的 [ ] 号。

img_2

数据库的基本操作

看了一下文档,发现它支持的操作很多,文档写得也很详细。这当然就没办法一个个去试用了,就介绍一下最简单的增删改查的方法,如果有更深的需求可以研究一下文档。

要对数据库进行操作,首先要获取数据库的实例

//数据库实例
const db = wx.cloud.database()

这个database可以传两个参数,比较重要的是env参数,它是你要获取的数据库实例所在的那个环境的ID值,假如不填写的话,它就会采用项目app.js文件中 wx.cloud.init方法里设置的env值;假如在 wx.cloud.init也没有填写env值,那么就会选择默认的环境,也就是你帐号创建的第一个环境。(每个帐号默认的环境配额是两个,环境之间是相互独立的。)

img_3

command是数据库的操作符,通过db.command获取,一般为了简便都用 _ 来表示获取的这个方法。

//数据库操作符
const _ = db.command

img_5
以上两行代码如果在同一个页面中要使用多次增删改查,我一般都写到最顶,这样就不用重复定义了。

注:在开始之前一定要注意数据库的权限设置,不然可能会怎么操作数据库都没变化,甚至报错

img_4

collection是数据库集合的引用,通过db.collection(‘collectionName’)选择要操作的集合

 addData:function(){
   
    //准备一个数据
    let writer = {
   
      title:'日光流年',
      author:'阎连科2',
      characters:['乡野','文学','中国'],
      publishInfo:{
   
         year:2012,
         country:'中国'
      }
    }

    //调用collection.add()方法往集合book里添加一条记录
    db.collection('book').add({
   
      //data字段是要添加的数据
      data:{
   
        title:writer.title,
        author:writer.author,
        characters:writer.characters,
        publishInfo:writer.publishInfo
      }
    })
    .then(res => {
   
      //成功返回的是一个集合,其中_id是刚添加好的记录的id
      console.log(res)
    })
    .catch(console.error)
  },

注:collection.remove()方法只能在小程序2.9.4以上的版本、云函数和Web端使用。如果不想使用云函数的话可以在“设置->项目设置”中把基础库调到2.9.4以上

  deleteData: function(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值