小程序云开发客户端数据库API入门

微信小程序云开发为开发者通过了云数据库,该数据库是一个类似MongoDB的文档型数据库,拥有丰富的api可用。比较特别的是:这些api中有很多是客户端(小程序端)的api, 这就使得我们可以不通过云端服务(用云函数编写)直接访问,操作云数据库,云存储。 本文就是介绍如何使用客户端api访问云数据库。

云数据库概览

云数据库类似于MongoDB, 也是文档型数据库,因此一些核心概念是相同的。 比如都是用集合(collection)来表示类似关系数据库中的表的概念,用文档(document)表示类似关系数据库中记录的概念。同时,小程序云开发提供了丰富的数据库操作API, 典型的有:
get - 获取数据,相当于SQL中的 select
add - 新增数据,相当于SQL中的 insert
update - 更新数据, 相当于SQL中的 update
remove - 删除数据, 相当于SQL中的 delete

访问步骤

  1. 首先需要获取 database 的实例
  2. 从 database 实例中获取要操作的集合的实例 collection
  3. 在集合上进行数据操作

假设在云数据库中有一个名为:MyJournal 的集合,则示例代码如下:

1
2
const db = wx.cloud.database()
const myJournal = db.collection('MyJournal')

获取数据

如果我们希望获取集合: MyJournal 中的所有数据,则可以用一下代码实现:

1
2
3
4
5
6
7
8
9
10
11
const db = wx.cloud.database()
const myJournal = db.collection('MyJournal')

myJournal.get().then(res => {

this.setData({
journals: res.data
})
}).catch(err => {
console.log('fail ' + err)
})

从代码可以看到,获取数据使用了 get 方法,该方法会放回一个 json 数组。

如果我们想根据某个条件进行查询,可以使用 where 函数,示例代码如下:

1
2
3
...
myJournal.where({title:'Test'}).get().then(res => { })
...

可以看到,where 函数需要放在 get 之前进行调用, where 的参数是一个 json 对象。

类似的,如果要限制查询的条数,可以使用 limit, 如果要排序,使用 ordreBy 等等

本文标题:小程序云开发客户端数据库API入门

文章作者:晨星

发布时间:2019年07月02日 - 22:07

最后更新:2020年09月16日 - 08:09

原始链接:https://www.mls-tech.info/weapp/weapp-cloud-client-db-api/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。