在MongoDB中,事務(wù)回滾是通過使用session
對象來實現(xiàn)的。以下是MongoDB中事務(wù)回滾的步驟:
session
對象:使用startSession()
方法創(chuàng)建一個新的session
對象。const session = db.getMongo().startSession();
session
對象的startTransaction()
方法啟動一個事務(wù)。session.startTransaction();
db.collection.insertOne({ name: 'John' }, { session });
db.collection.updateOne({ name: 'John' }, { $set: { age: 30 } }, { session });
db.collection.deleteOne({ name: 'John' }, { session });
session
對象的abortTransaction()
方法來回滾事務(wù)。session.abortTransaction();
session
對象的commitTransaction()
方法來結(jié)束事務(wù)。session.commitTransaction();
session.endSession();
請注意,MongoDB的事務(wù)功能在副本集和分片集群中可用,并且要求MongoDB服務(wù)器版本為4.0及以上。