【问题标题】:Mongodb - Add Schema for existing collectionMongodb - 为现有集合添加架构
【发布时间】:2019-07-28 06:24:35
【问题描述】:

我的 MongoDB 中有一个包含 1300 万条记录的集合。不幸的是,当我创建这个集合时,并没有为它创建任何模式。我想知道是否有任何方法可以添加 JSON 模式,而不是备份整个数据库、创建模式并上传所有数据。

【问题讨论】:

    标签: json mongodb schema


    【解决方案1】:

    您可以使用 collMod 命令将 JSON 架构应用到现有集合,以将新的 JSON 架构添加到集合 https://docs.mongodb.com/manual/core/schema-validation/。下面是一个例子。但是它只适用于新的写入操作,不会针对集合中的现有文档运行。

    db.runCommand( {
       collMod: "contacts",
       validator: { $jsonSchema: {
          bsonType: "object",
          required: [ "phone", "name" ],
          properties: {
             phone: {
                bsonType: "string",
                description: "must be a string and is required"
             },
             name: {
                bsonType: "string",
                description: "must be a string and is required"
             }
          }
       } },
       validationLevel: "moderate"
    } )
    

    【讨论】:

    猜你喜欢
    • 2018-02-22
    • 1970-01-01
    • 2017-02-02
    • 1970-01-01
    • 1970-01-01
    • 2014-03-07
    • 1970-01-01
    • 2018-02-12
    • 2011-11-15
    相关资源
    最近更新 更多