增
初始化
let db=wx.cloud.database()
连接集合
db.collection('集合名').add({
data:{
键值对
},
success:function(res){
成功回调
}
})
查
1、id查询
async getDb(){
let db=wx.cloud.database();
//是一个promise对象
let result = await db.collection('dbtest').doc('id值').get()
}
2、条件查询(where)
async queryDb(){
let db=wx.cloud.database();
//返回数据库中所有结果
let res=await db.collection('dbtest').get();
console.log(res);
}
(1)相等条件
async queryDb(){
let db=wx.cloud.database();
let res=await db.collection('dbtest').where({
username:'jeff'
}).get();
console.log(res);
}
(2)大范围条件
async queryDb2() {
let db = wx.cloud.database();
let cmd=db.command;
let res = await db.collection('dbtest').where({
// age:cmd.lt(18)
//大于16小于19,lte表示小于等于,表示或将and改成or
// age:cmd.lt(19).and(cmd.gt(16))
//in来范围查询
age:cmd.in([17])
}).get();
console.log(res);
}
其中:
通过let xx=初始化对象.command;
xx.gt()
xx.lt().and(xx.gt())
xx.in([x,x,x])
实现多范围
3、修改 (条件修改需要node.js云函数才能修改)
update2() {
let db = wx.cloud.database();
db.collection('dbtest').doc('id值').update({
data: {
age: 20
},
success: function (res) {
console.log(res);
}
})
}
4、删 (条件删除需要node.js云函数才能修改)
removeDb(){
let db=wx.cloud.database();
db.collection('dbtest').doc('id值').remove({
success:function(res)
{
console.log(res);
}
})
}
云函数条件删除示例:
需要创建node.js云函数,并上传依赖,再在js中调用才能生效
代码示例:
// miniprogram/db/db.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
// this.addDb()
// this.getDb();
// this.queryDb();
// this.queryDb2();
//this.update();
this.removeDb();
},//添加
addDb(){
//初始化
let db=wx.cloud.database();
//连接指定集合
db.collection('dbtest').add({
data:{
username:'jeff',
password:'123',
age:17
},
success:function(res)
{
console.log(res);
}
})
},
//id查询
async getDb(){
let db=wx.cloud.database();
//是一个promise对象
let result = await db.collection('dbtest').doc('1583714793020_0.589963916952146_33585318').get()
console.log(result);
},
//条件查询
async queryDb(){
let db=wx.cloud.database();
let res=await db.collection('dbtest').where({
username:'jeff'
}).get();
console.log(res);
},
//条件查询2
async queryDb2() {
let db = wx.cloud.database();
let cmd=db.command;
let res = await db.collection('dbtest').where({
// age:cmd.lt(18)
//大于16小于19,lte表示小于等于,表示或将and改成or
// age:cmd.lt(19).and(cmd.gt(16))
//in来范围查询
age:cmd.in([17])
}).get();
console.log(res);
},
//修改,条件修改需要在云函数中调用,因为需要管理员权限
update2() {
let db = wx.cloud.database();
db.collection('dbtest').doc('1583715745437_0.16474788067416468_33617666').update({
data: {
age: 20
},
success: function (res) {
console.log(res);
}
})
},
//删除
removeDb(){
let db=wx.cloud.database();
db.collection('dbtest').doc('1583715745437_0.16474788067416468_33617666').remove({
success:function(res)
{
console.log(res);
}
})
}
})