有两个集合Employee
和“项目”,它需要维护员工和项目基础项目分配的历史记录。
我已经创建了收集模式,但是它复制了数据,还有其他方法可以实现吗?
员工架构
const employeeSchema = mongoose.Schema({
name: {
type: String,
required: true
},
project: {
start: {
type: Date,
required: true
},
end: {
type: Date,
required: true
},
project: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Project',
required: true
}
},
}
项目架构
const projectSchema = new mongoose.Schema({
name: {
type: String,
required: true
},
employee: {
start: {
type: Date,
required: true
},
end: {
type: Date,
required: true
},
project: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Employee'
}
}
});
或者我可以创建用于映射项目和员工的单独集合吗?如果我这样做,那么MongoDB和RDBMS有什么区别?