我正在考虑迁移到 mongoDB,但我对这件事缺乏一些基本的了解。我的主要问题是“存储的对象如何受到模型更改的影响?”。这是一个更好地理解我想知道的场景:
- 我创建了一个具有名字、姓氏、电子邮件属性的“用户”模型。
- 我在我的应用程序中创建了 25 个存储在 mongo 中的用户(因此它们存储为 {first_name: "xxx", last_name: "yyy", email: "zzz"})
- 我向我的“用户”模型添加了一个属性:用户名
- 我在我的应用程序中创建了 25 个新用户(因此他们被存储为 {first_name: "xxx", last_name: "yyy", email: "zzz", username: "xyz"})
- 我从“用户”模型中删除了“名字”和“姓氏”属性。
- 我更新了前 25 个用户中的 5 个的电子邮件地址。
所以这是我的问题:
- 将“用户名”属性添加到“用户”模型后,前 25 个对象会发生什么情况?他们是否在 BSON 定义中收到“用户名”属性且值为空?我的理解是,他们只是没有受到影响。
- 当我从“用户”模型中删除“名字”和“姓氏”属性时,现有的 50 个用户会发生什么情况?我想与#1相同的答案适用。
- 在我更新了 10 条记录的电子邮件地址后,这 5 个第一会发生什么?他们是否添加了“用户名”、删除了“名字”和“姓氏”并更新了他们的电子邮件地址?或者只是更新了他们的电子邮件地址?