트랜잭션 지원은 MongoDB 4.0에서 사용할 수 없습니다. 유사한 결과를 얻으려면 findOneAndUpdate()를 사용하십시오.
문서로 컬렉션을 만들자 −
> db.demo404.insertOne({"FirstName":"John"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e6f8c38fac4d418a0178592")
}
> db.demo404.insertOne({"FirstName":"Robert"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e6f8c3cfac4d418a0178593")
}
> db.demo404.insertOne({"FirstName":"Mike"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e6f8c40fac4d418a0178594")
} find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
> db.demo404.find();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e6f8c38fac4d418a0178592"), "FirstName" : "John" }
{ "_id" : ObjectId("5e6f8c3cfac4d418a0178593"), "FirstName" : "Robert" }
{ "_id" : ObjectId("5e6f8c40fac4d418a0178594"), "FirstName" : "Mike" } 다음은 findOneAndUpdate를 사용하고 MongoDB에서 잠금을 설정하는 쿼리입니다 -
> result=db.demo404.findOneAndUpdate({"in_transaction": {"$exists": false}}, {"$set": {"in_transaction": true}}); 이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e6f8c38fac4d418a0178592"), "FirstName" : "John" }