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

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

前言

微信云数据库使用的是非关系型数据库,类似于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)
      })
相关文章
|
3月前
|
JSON 安全 定位技术
微信附近人提取v3脚本, 微信附近人id提取技术插件,采集附近人wxid数据工具
本内容介绍微信“附近的人”功能的技术原理与实现方法,基于LBS服务,涉及位置模拟、协议分析及数据解析。通过修改GPS坐标或使用Frida等工具hook位置函数
|
12月前
|
存储 安全 小程序
在微信小程序中使用 Vant 时如何确保数据的安全?
在微信小程序中使用 Vant 时如何确保数据的安全?
166 1
|
7月前
|
缓存 小程序 API
微信小程序页面导航与路由:实现多页面跳转与数据传递
本文深入探讨微信小程序的页面导航与路由机制,介绍多种页面跳转方式如`wx.navigateTo`、`wx.redirectTo`、`wx.switchTab`等,并讲解通过URL、全局变量和事件传递数据的方法。结合案例实现多页面跳转与数据传递,帮助开发者掌握这一重要技能。
|
7月前
|
缓存 小程序 API
微信小程序网络请求与API调用:实现数据交互
本文深入探讨了微信小程序的网络请求与API调用,涵盖`wx.request`的基本用法、常见场景(如获取数据、提交表单、上传和下载文件)及注意事项(如域名配置、HTTPS协议、超时设置和并发限制)。通过一个简单案例,演示了如何实现小程序与服务器的数据交互。掌握这些技能将帮助你构建功能更丰富的应用。
|
11月前
|
小程序 JavaScript 开发工具
微信小程序——全局数据共享
【10月更文挑战第5天】
|
11月前
|
缓存 小程序 UED
如何利用小程序的生命周期函数实现数据的加载和更新?
如何利用小程序的生命周期函数实现数据的加载和更新?
276 4
|
11月前
|
移动开发 小程序 数据可视化
微信小程序可视化开发工具之动态数据
微信小程序可视化开发工具之动态数据
202 4
|
12月前
|
小程序 开发者
微信小程序之网络数据请求 wx:request的简单使用
这篇文章介绍了微信小程序中如何使用wx.request进行网络数据请求,包括请求的配置、请求的格式以及如何在开发阶段关闭请求的合法检验。
微信小程序之网络数据请求 wx:request的简单使用
|
11月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
2504 7
|
11月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
1975 1

热门文章

最新文章