微信小程序数据增删改查

1,004 阅读2分钟

客户端查询数据

数据库的引用

const定义变量 在声明时需要赋值 后期不可修改 如果修改会报错

//引用数据库
const db = wx.cloud.database();

添加信息add

//add为自定义添加信息函数名 
add: function(){
//collection() 括号内为集合名
    db.collection('userinfo').add({
      data:{
        name:'xiaocainiao',
        age: 20
      },
      //成功
      success:function(res){
        console.log('success:',res);
      },
      //失败
      fail:function(err){
        console.log('fail:',err);
      }
    })
  }

数据的更新

update() 修改信息

update:function(){
//doc 根据ID 查询一条记录
    db.collection('userinfo').doc('face13585d40508d06c8234235c66219').update({
    //data内为需要更改的值
      data:{
        name:'dalaoshu',
        age:18
      },
      success: function (res) {
        console.log('success:', res);
      },
      fail: function (err) {
        console.log('fail:', err);
      }
    })
  }

查找信息

get() 返回查询的信息

可以根据ID查询数据doc() 返回一条匹配信息

查询信息

 search: function(){
  db.collection('userinfo').doc('face13585d40508d06c8234235c66219').get({
    success: function (res) {
      console.log('success:', res);
    },
    fail: function (err) {
      console.log('fail:', err);
    }
  })
}

where() 根据属性条件进行查询 返回一个数组

search: function(){
  db.collection('userinfo').where({
        name: 'dalaoshu',
  }).get({
          success: function (res) {
              console.log('success:', res);
          },
          fail: function (err) {
            console.log('fail:', err);
          }
      })
}

删除数据库

remove () 删除一条记录

del: function(){
  db.collection('userinfo').doc('face13585d40508d06c8234235c66219').remove({
    success: function (res) {
      console.log('success:', res);
    },
    fail: function (res) {
      console.log('fail:', res);
    }
  })
},

查询 所有数据记录(客户端 最多20条)

searchAll:function(){
  db.collection('userinfo').get({
    success: function (res) {
      console.log('success:', res);
    },
    fail: function (err) {
      console.log('fail:', err);
    }
  })
  //返回为数组
}

条件查询

//where()函数中明确筛选条件
db.collection('userinfo').where({
   //筛选年龄大于19 gt 大值 lt 小值
     age: _.gt(19)
   }).get({
     success: function (res) {
       console.log('success:', res);
     },
     fail: function (err) {
       console.log('fail:', err);
     }
   })
   //返回数组

云函数查询数据

建立a+b求和函数

//// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
const db = cloud.database;
// 云函数入口函数
exports.main = async (event, context) => {
//返回 event.a + event.b;
return event.a + event.b;
}

callFunction() 调用云函数

name 云函数名称

data 函数参数(实参)

complete 成功的调回函数

//click 为绑定点击事件
click: function(){
//调用微信云函数
   wx.cloud.callFunction({
   //函数名add
     name:'add',
     data:{
       a:1,
       b:4
     },
     complete:function(res){
       console.log(res)
     }
   })
 },

云函数删除数据

// 云函数入口文件
const cloud = require('wx-server-sdk')
//云函数端,调用数据库 只需直接cloud.database

cloud.init()
const db = cloud.database();

// 云函数入口函数
exports.main = async (event, context) => {
 return db.collection('userinfo').where({
 //获取age = 20 的所有记录
   age: 20
 }).remove({
   success: function (res) {
     console.log('success:', res);
   },
   fail: function (err) {
     console.log('fail:', err);
   }
 })
}

delAll:function(){
   wx.cloud.callFunction({
     name: 'delAll',
      complete: function (res) {
       console.log(res)
     }
   })
 }

注意!!!

改动过的云函数一定要重新上传

云函数调用数据库只需要cloud.database() 不需要加wx.