mongodb4.0支持事务


事务特性:

原子性:所有的改变都完成
一致性:最终执行结果一致就行
隔离性:一个事务的执行不能其它事务干扰。
持久性:指一个事务一旦提交,数据不会改变,存在数据库中

exports.getSession = async function() {
return await mongoClient.startSession();
}

//每次开启事务管理

 

 

https://docs.mongodb.com/manual/core/transactions/

https://mongoosejs.com/docs/api.html#connection_Connection-startSession 

const session = await db.getSession();
session.startTransaction({
     readConcern: {
         level: 'snapshot'
     },
    writeConcern: {
        w: 'majority'
   }
});

db.collection(this.collecitonName)
   .insertOne(doc, {
   session
});

回滚:

await session.abortTransaction();

提交:

await session.commitTransaction();

session.endSession();

参考:https://docs.mongodb.com/manual/core/transactions


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM