sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB 2.2 - Uppdatering av Array Nested Document

Det finns inget sätt att göra detta för närvarande med en vanlig uppdateringsoperation av skäl som du noterat.

Det enda du kan använda för tillfället är att lägga till versionshantering till ditt dokument och använda optimistisk låsning genom att läsa dokumentet, hitta lämpliga element att ändra i din applikation, ändra deras värden och sedan använda en update som inkluderar versionen i det lästa dokumentet (så att om en annan tråd uppdaterade dokumentet mellan din fråga och din uppdatering skulle du inte skriva över ändringarna utan måste ladda om dokumentet och försöka igen.

Versioneringsstrategin skulle inte behöva baseras på hela dokumentet, du kan versionera de första arrayelementen och sedan skulle du kunna uppdatera bara den underarray du var intresserad av (via en uppdatering med $set).




  1. Finns det en MongoDB maximal bson-storlek?

  2. Stoppa redis-servern. Varken avstängning eller stopp fungerar

  3. MongoDB-aggregation för att lägga till saknade månader mellan två datum efter gruppering på datumfält

  4. Gå:Skapa io.Writer-gränssnitt för att logga till mongodb-databasen