sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoError:kan ikke ændre _id for et dokument

Fra at se på din mongo-fejl, er problemet ikke med mongo, det er bare at gøre, hvad det skal. Det havde et objekt med _id af ObjectId-typen:ObjectId('xxx'), og nu forsøger du at ændre det objekt til at have et _id af en String-type (_id:"5083e4a7f4c0c4e270000001"), og som Mongo tilsyneladende ikke kan lide.

Så spørgsmålet er:hvorfor havde objektet et id af typen ObjectId i første omgang? Hvordan indstillede du den første gang? Hvis du brugte en anden metode til at initialisere den (jeg gætter på serversiden), skal du indstille id-typen til at være en streng, så den er den samme som den, der kommer fra dit script-bibliotek. Hvis du ønsker, at det skal forblive et ObjectId, skal du konvertere den streng, der kommer fra dit script, til et ObjectId, før du gemmer det til Mongo.

HTH.



  1. Sådan bruger du $query, $hint eller $explain fra Java

  2. Covert RFC3339 DateTime to Date i java

  3. Mongodb php få id for nyt dokument?

  4. mongodb opdatering push array