新聞中心
這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)小程序教程:SDK數(shù)據(jù)庫(kù)Transaction
Transaction
數(shù)據(jù)庫(kù)事務(wù)操作對(duì)象

創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設(shè)、做網(wǎng)站與策劃設(shè)計(jì),瀾滄網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:瀾滄等地區(qū)。瀾滄做網(wǎng)站價(jià)格咨詢:028-86922220
方法:
Transaction.collection(name: string): Collection
支持端:云函數(shù)
事務(wù)中獲取集合的引用。方法接受一個(gè) name 參數(shù),指定需引用的集合名稱。
參數(shù)
name: string
集合名稱
返回值
Collection
集合引用
注意事項(xiàng)
在事務(wù)中僅能進(jìn)行單記錄操作,也就是不能使用 where、aggregate 接口,可以使用的接口如下:
collection 獲取集合引用
|-- add 新增記錄
|-- doc 獲取記錄引用
|-- get 獲取記錄內(nèi)容
|-- update 更新記錄內(nèi)容
|-- set 替換記錄內(nèi)容
|-- remove 刪除記錄
Transaction.rollback(reason: any): Promise
支持端:云函數(shù)
終止并回滾事務(wù)
參數(shù)
reason: any
終止后,希望在 runTransaction 返回的 Promise reject 時(shí)接收到的值。
返回值
Promise.
終止完成
示例代碼
const cloud = require('wx-server-sdk')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database({
throwOnNotFound: false,
})
const _ = db.command
try {
const result = await db.runTransaction(async transaction => {
const aaaRes = await transaction.collection('account').doc('aaa').get()
// ...
// 終止事務(wù)
await transaction.rollback(-100)
})
} catch (e) {
// e === -100
console.error(`transaction error`, e)
}Transaction.commit(reason: any): Promise
支持端:云函數(shù)
提交事務(wù)
參數(shù)
reason: any
終止后,希望在 runTransaction 返回的 Promise reject 時(shí)接收到的值。
返回值
Promise.
提交完成
示例代碼
const cloud = require('wx-server-sdk')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database({
throwOnNotFound: false,
})
const _ = db.command
exports.main = async (event) => {
try {
const transaction = await db.startTransaction()
// ...
await transaction.collection('account').doc('aaa').update({
data: {
amount: 100
}
})
// 提交事務(wù)
await transaction.commit()
return {
success: true,
}
} catch (e) {
console.error(`transaction error`, e)
return {
success: false,
error: e,
}
}
}API 列表:
transaction
|-- collection 獲取集合引用
| |-- doc 獲取記錄引用
| | |-- get 獲取記錄內(nèi)容
| | |-- update 更新記錄內(nèi)容
| | |-- set 替換記錄內(nèi)容
| | |-- remove 刪除記錄
| |-- add 新增記錄
|-- rollback 終止事務(wù)并回滾
|-- commit 提交事務(wù)(僅在使用 startTransaction 時(shí)可調(diào)用) 文章名稱:創(chuàng)新互聯(lián)小程序教程:SDK數(shù)據(jù)庫(kù)Transaction
瀏覽路徑:http://fisionsoft.com.cn/article/ccccddo.html


咨詢
建站咨詢
