Mongodb Mongo:创建唯一的文本索引

Mongodb Mongo:创建唯一的文本索引,mongodb,Mongodb,尝试在Mongo中创建索引,该索引要求键是唯一的,值是文本字段类型 我创建索引: db.collection.createIndex({id: 'text'}, {unique: true})` 我插入我的第一条记录: db.collection.insert({id: '1'}) 我插入了第二条id为1的记录,它是一个整数,并且预期会出现如下错误:id不能是整数 db.collection.insert({id: 1}) 如何确保id字段中只允许字符串,并且当有人试图插入整数时会引发错误

尝试在Mongo中创建索引,该索引要求键是唯一的,值是文本字段类型

我创建索引:

db.collection.createIndex({id: 'text'}, {unique: true})`
我插入我的第一条记录:

db.collection.insert({id: '1'})
我插入了第二条id为1的记录,它是一个整数,并且预期会出现如下错误:id不能是整数

db.collection.insert({id: 1})

如何确保id字段中只允许字符串,并且当有人试图插入整数时会引发错误?

一个确保插入正确数据类型的工具

在您的特殊情况下,它必须是这样的:

db.runCommand( {
   collMod: "collection",
   validator: { $jsonSchema: {
      bsonType: "object",
      required: [ "id" ],
      properties: {
         id: {
            bsonType: "string",
            description: "must be a string and is required"
         }
      }
   } }
} )