sql >> Database >  >> NoSQL >> MongoDB

mongo _id veld dubbele sleutel fout

Waarschijnlijk is dit omdat u een index heeft die een unieke waarde vereist voor een van de velden, zoals hieronder weergegeven:

> db.servers.remove()
> db.servers.ensureIndex({"name": 1}, { unique: 1})
> db.servers.insert({"_id": "1.2.3"})
> db.servers.insert({"_id": "1.2.4"})
E11000 duplicate key error index: test.servers.$name_1  dup key: { : null }

U kunt uw indexen bekijken met getIndexes() op de collectie:

> db.servers.getIndexes()
[
    {
        "v" : 1,
        "key" : {
                "_id" : 1
        },
        "ns" : "test.servers",
        "name" : "_id_"
    },
    {
        "v" : 1,
        "key" : {
                "name" : 1
        },
        "unique" : true,
        "ns" : "test.servers",
        "name" : "name_1"
    }
]


  1. gebruik :=geeft ongebruikte fout maar gebruik =niet in Go

  2. MongoDB-resultatenset voor Aggregate()

  3. Wat is het gedrag van het instellen van een time-out bij de uitvoering van de aggregatiepijplijn in MongoDB Java Driver?

  4. Mangoestschema:'uniek' wordt niet gerespecteerd