【问题标题】:MongoDB pymongo - update primary keyMongoDB pymongo - 更新主键
【发布时间】:2021-04-09 03:58:54
【问题描述】:

我有一个包含 30m 数据的现有集合。

目前,它的主键是默认的 ObjectId,但由于性能和识别问题,现在我想为其添加另一个主键。

我的研究提出了一种使用新主键重新删除和插入数据的解决方案。

我找不到任何其他关于简单地向现有数据库添加新主键的信息,想知道这是否在 pymongo 中不可用?

我担心整个操作会导致问题,因为数据库很大并且很难恢复。

【问题讨论】:

    标签: python database mongodb pymongo


    【解决方案1】:

    MongoDB没有“主键”的概念。

    每个文档都必须设置 _id 字段,并且 _id 值在集合中必须是唯一的。您无法更改此行为。

    您可以添加额外的唯一索引,但它们不会取代刚才概述的 _id 要求。

    即使在关系意义上,您也滥用了“主键”概念。表中只能有一个主键,因此不能“添加”主键。

    【讨论】:

    • 完美——理清了概念。谢谢!
    猜你喜欢
    • 2021-07-04
    • 2021-12-05
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-08
    • 1970-01-01
    • 2021-11-30
    相关资源
    最近更新 更多