mongodb __v 예제
// MongoDB 컬렉션 스키마 예제
const mongoose = require('mongoose');
const exampleSchema = new mongoose.Schema({
name: {
type: String,
required: true
},
age: {
type: Number,
required: true
},
__v: {
type: Number,
select: false // 조회 결과에서 제외
}
});
const Example = mongoose.model('Example', exampleSchema);
module.exports = Example;
위의 코드에서 __v
필드는 MongoDB의 내부 버전 관리를 위해 자동으로 생성되는 필드입니다. 이 필드는 컬렉션의 도큐먼트 버전을 추적하는 데 사용됩니다.
특히, __v
필드를 사용하여 도큐먼트의 수정된 내용을 추적할 수 있습니다. MongoDB에서 도큐먼트를 업데이트할 때마다 __v
필드의 값을 증가시킵니다. 이를 통해 동시성 문제를 방지하고 데이터 정합성을 유지할 수 있습니다.
이러한 __v
필드는 기본적으로 조회 결과에 포함됩니다. 하지만 위의 예제에서는 __v
필드를 조회 결과에서 제외하기 위해 select: false
옵션을 사용하였습니다.
위의 예제를 참고하여 MongoDB에서 __v
필드를 활용하는 방법을 적용해 보실 수 있습니다.
#mongodb #mongoose