微信小程序系列——对数据的增删改查操作

前言

微信云数据库使用的是非关系型数据库,类似于Elasticsearch、MongoDB等,与传统的Oracle、MySQL等关系型数据库不同。

建议开发小程序之前先了解一下非关系型数据库基础知识。

一、添加文档

wxml:

绑定insert事件

<button bindtap='insert'>插入数据</button>

js:

insert事件里调用db.collection().add()方法,

其中collection里填入集合名称;

data是需要添加的一条记录;

有两种回调方式:

第一种是使用success、fail来回调:

insert: function () {
  db.collection('user').add({
    data:{
      name:'Jerry',
      age: 20
    },
    success: res => {
      console.log(res);
    },
    fail: res => {
      console.log(err)
    }
  })
},

第二种是使用then、catch来回调(Promise 风格):

注:本文的增删改查都可以使用这种方式回调,下文不再分为这两类。

insert: function(){
  db.collection('user').add({
    data: {
      name: 'Jack',
      age: 20
    }
  }).then(res=>{
    console.log(res);
  }).catch(res=>{
    console.log(err)
  })
},

 结果:

数据库里产生了一条记录,其中_id是主键,可以利用主键进行修改、删除、查询的操作

二、删除文档

wxml:

绑定delete事件

<button bindtap='delete'>删除数据</button>

 js:

delete事件调用db.collection().doc().remove()方法

其中collection中填入集合名称;

doc中填入需要修改文档的_id;

delete: function(){
  db.collection('user').doc('3e1ef27b5d1da216009d74690092dbe4')
  .remove()
  .then(res => {
    console.log(res);
  }).catch(res => {
    console.log(res);
  })
},

可以从云数据库中对应的那一条记录有没有被删除 

三、修改文档

wxml:

绑定update事件

<button bindtap='update'>修改数据</button>

js:

update事件调用db.collection().doc().update()方法;

(注意:有两种方法:update和set,其中update是局部更新,set是全局更新)

其中collection中填入集合名称;

doc中填入需要修改文档的_id;

data里填入修改的字段与字段对应的值

update:function(){
  db.collection('user').doc('3e1ef27b5d1da216009d74690092dbe4').update({
    data:{
      age:100
    }
  }).then(res=>{
    console.log(res);
  }).catch(res=>{
    console.log(res);
  })
},

可以从云数据库中对应的那一条记录有没有被修改

四、查询文档

wxml:

绑定search事件 

<button bindtap='search'>查询数据</button>

js:

search事件调用db.collection().where().get()方法

其中collection中填入集合名称;

where中填入需要查找的字段以及对应的值;

search: function(){
  db.collection('user').where({
    name:'Jerry'
  }).get().then(res=>{
    console.log(res);
  }).catch(res=>{
    console.log(res);
  })
},

查询一个集合下面的文档数量

db.collection('****').where({
        _openid: '****' // 填入当前用户 openid
      }).count().then(res => {
        console.log(res.total)
      })

体验小程序

      

更多内容,请关注公众号:程序员高手之路

在公众号回复:小程序资源   即可免费获取以下微信小程序视频教程!

 

  • 17
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前方一片光明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值