百度智能小程序 Database

2020-09-05 14:58 更新

Database.collection

解釋:獲取云數(shù)據(jù)庫(kù)指定名稱的集合對(duì)象

參數(shù)

名稱 類型 必須 說(shuō)明
name String 集合名稱

返回值:Collection

代碼示例

const cloud = require('swan-server-sdk')

exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()
  const coll = db.collection('articles')
}



Database.command

云數(shù)據(jù)庫(kù)操作指令對(duì)象,包含相關(guān)數(shù)據(jù)庫(kù)文檔操作指令構(gòu)造方法

指令列表

名稱 類型 說(shuō)明
set 賦值操作
inc 數(shù)值操作 自增
mul 數(shù)值操作 自乘
eq 邏輯運(yùn)算 等于
neq 邏輯運(yùn)算 不等于
gt 邏輯運(yùn)算 大于
gte 邏輯運(yùn)算 大于
lt 邏輯運(yùn)算 大于
lte 邏輯運(yùn)算 大于
and 邏輯運(yùn)算 邏輯與
or 邏輯運(yùn)算 邏輯或
in 邏輯運(yùn)算 包含于
nin 邏輯運(yùn)算 不包含于
pop 數(shù)組操作 移出數(shù)組尾部元素
push 數(shù)組操作 插入到數(shù)組尾部
shift 數(shù)組操作 移出數(shù)組首部元素
unshift 數(shù)組操作 插入到數(shù)組首部
geoIntersects 地理運(yùn)算 地理區(qū)域相交
geoNear 地理運(yùn)算 地理區(qū)域相鄰
geoWithin 地理運(yùn)算 地理區(qū)域包含

代碼示例

const cloud = require('swan-server-sdk')

exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()
  const cmd = db.command
  try {
    return await db.collection('userList').where({
      age: cmd.gt(18)
    })
  }
  catch(err) {
      console.log(err)
  }
}



Database.createCollection

在云數(shù)據(jù)庫(kù)中新增集合

參數(shù)

名稱 類型 必須 說(shuō)明
name String 集合名稱

返回值 Promise

resolve 結(jié)果:

名稱 類型 說(shuō)明
requestID String 請(qǐng)求 ID

reject 結(jié)果:

名稱 類型 說(shuō)明
code String 錯(cuò)誤碼
message String 錯(cuò)誤信息

代碼示例

const cloud = require('swan-server-sdk')

exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()
  try {
    await db.createCollection('articles')
  }
  catch(err) {
    console.log(err)
  }
}



Database.Geo

云數(shù)據(jù)庫(kù)地理對(duì)象,包含相關(guān)地理位置信息構(gòu)造接口

類型列表

名稱 說(shuō)明
Point 點(diǎn)
MultiPoint 點(diǎn)集合
Linestring 線段
MultiLinestring 線集合
Polygon 多邊形
MultiPolygon 多邊形集合

代碼示例 1 - Point

const cloud = require('swan-server-sdk')

exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()
  const Geo = db.Geo
  try {
    return await db.collection('poiList').add({
        name: '天安門',
        location: Geo.Point(116.4074, 39.9042)
    })
  }
  catch(err) {
      console.log(err)
  }
}

代碼示例 2 - LineString

const cloud = require('swan-server-sdk')

exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()
  const Geo = db.Geo
  try {
    return await db.collection('poiList').add({
        name: '天安門',
        location: Geo.LineString([
          Geo.Point(113, 23),
          Geo.Point(120, 50),
          // ... 可選更多點(diǎn)
        ])
    })
  }
  catch(err) {
      console.log(err)
  }
}



Database.serverDate

創(chuàng)建云數(shù)據(jù)庫(kù)的服務(wù)端時(shí)間對(duì)象

參數(shù)

名稱 類型 必須 說(shuō)明
option Object
option.offset Number 相對(duì)當(dāng)前時(shí)間偏移,單位:毫秒

返回值ServerDate

代碼示例

const cloud = require('swan-server-sdk')
exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()

  try {
      return await db.collection('articles').add({
        title: 'baidu cbd tutorial',
        status: 0,
        visits: 0,
        createDate: new Date({
            offset: 1000
        }),
    })
  }
  catch(err) {
    console.log(err)
  }
}



Database.RegExp

創(chuàng)建云數(shù)據(jù)庫(kù)的相關(guān)指令所需的正則表達(dá)式對(duì)象

參數(shù)

名稱 類型 必須 說(shuō)明
data Object
data.regexp String 正則表達(dá)式
data.options String 正則表達(dá)式 flags: i, m, s

返回值

RegExp

代碼示例 1

const cloud = require('swan-server-sdk')
exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()
  try {
      return await db.collection('articles').where({
        title: /miniprogram/i,
    })
  }
  catch(err) {
    console.log(err)
  }
}

代碼示例 2

const cloud = require('swan-server-sdk')
exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()
  try {
      return await db.collection('articles').where({
        title: db.RegExp({
            regexp: '^baidu',
            options: 'i',
        }),
    })
  }
  catch(err) {
    console.log(err)
  }
}

代碼示例 3

const cloud = require('swan-server-sdk')
exports.main = async (event, context) => {
  cloud.init(context)
  const db = cloud.database()
  try {
      return await db.collection('articles').where({
        title: new db.RegExp({
            regexp: '^baidu',
            options: 'i',
        }),
    })
  }
  catch(err) {
    console.log(err)
  }
}


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)