【问题标题】:How to create a unique index when a collection is created? or before it created?创建集合时如何创建唯一索引?还是在它创建之前?
【发布时间】:2021-12-27 04:55:26
【问题描述】:

我们正在使用mongo存储一些SASS业务数据,集合名称如:“company_id_user”,它们是动态创建的,我们希望在集合创建后创建一些唯一索引,我没有找到解决方法这个。

如果我们在生成文档的时候不能创建唯一索引,那么文档可能在并发的时候已经生成了非唯一数据,我们不能再创建了。

我们不想从代码中解决它,而是从 mongodb self.

【问题讨论】:

    标签: mongodb indexing unique


    【解决方案1】:

    您可以在创建集合之前创建索引。例如,我没有名为 users 的集合,我正在 email 字段上创建唯一索引。

    来自mongo shell 或mongosh

    db.users.createIndex( { email: 1 }, { unique: true } )
    

    这将创建空集合(名称为users)以及email 字段上的唯一索引。而且,您可以使用以下命令验证索引创建:

    db.users.getIndexes()
    

    另外,请参阅有关 Indexes 的 MongoDB 手册。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-10
      • 2013-05-10
      • 2011-08-21
      • 1970-01-01
      相关资源
      最近更新 更多