mongodb update delete document with examples
Allt om Update () och Delete () Document i MongoDB med exempel:
I vår tidigare handledning i detta MongoDB träningsserie , vi lärde oss om användning av matriser i MongoDB .
I den här handledningen lär vi oss mer om uppdateringen och ta bort dokumentet i MongoDB-samlingen.
Det finns fyra MongoDB-uppdatering metoder för att uppdatera posten. Varje metod har en specifik anledning att användas inom MongoDB.
Uppdateringsmetoderna är som följer:
- Uppdatering()
- UpdateOne ()
- UpdateMany ()
- FindOneAndUpdate ()
Vad du kommer att lära dig:
Uppdateringsmetod
Uppdateringsmetoden används för att modifiera ett befintligt dokument i samlingen.
Du kan ändra ett specifikt fält för hela dokumentet beroende på kriterierna för en uppdatering. Som standard används uppdateringsmetoden för att bara ändra en enskild post. Om du vill uppdatera flera dokument kan du ställa in “Multi: true” inom alternativparametern för uppdateringsmetoden.
Syntax:
är nätverksnyckeln wifi-lösenordet
db.collection_name.update(query, update, options)
fråga - Detta är urvalskriterierna för uppdateringsmetoden. Om du vill uppdatera åldern för en student som har ett angivet namn i samlingen är namnet urvalskriteriet.
uppdatering - Denna parameter används för att deklarera vad du vill uppdatera i den befintliga posten. Antag att vi har tre fält i dokumentet som namn, ålder och klass.
Efter detta måste du uppdatera elevens klass efter namn. Visa i uppdateringsparametern att du skickar $ set med det fält som du vill uppdatera. Vid en array måste du använda mongo push för att uppdatera.
alternativ - Det finns flera alternativ som vi kan använda som en uppdateringsmetod. Men vi kommer att fokusera på dem båda som är viktiga att förstå.
Det första alternativet är 'upprörd', om dess värde är sant kommer det att skapa en ny post när den försöker uppdatera ett icke-existerande dokument. Om värdet är falskt infogar det inte en ny post när ett icke-existerande dokument försöker uppdateras.
Det andra alternativet är 'multi', som används för att tillämpa kriterier på flera dokument i en samling om dess standardvärde är falskt. Om dess värde är sant, kommer det bara i så fall att implementera ändringarna på alla dokument som fyller alla frågekriterierna.
Uppdatera enkelt dokument
Låt oss anta att vi har följande struktur i dokumentet i samlingen.
Koda
db.softwaretestinghelp.find().pretty()
Figur 1: I MongoDB Shell
Figur 2: I Robo 3T
Nu vill vi uppdatera studentens namn i ovanstående dokument. För detta ändamål måste vi skriva frågan som du kan se i bilden nedan.
Koda
db.softwaretestinghelp.update({student_name:”New Name”},{$set: {student_name:”Current Name”}})
Figur 3: I MongoDB Shell
Figur 4: I Robo 3T
När vi kör dessa frågor i MongoDB-skalet, returnerade följande meddelande i skalet som du kan se i bilden nedan.
Figur 5: Output I MongoDB Shell
Det returnerade meddelandet från Shell kommunicerar inte mer utan när du kör samma kommando på Robo 3T det visar ett meddelande om hur många rader som uppdateras i körningen av uppdateringsfrågan.
Figur 6: Output I Robo 3T
Det finns fyra MongoDB Radera metoder med vilka vi kan ta bort ett dokument inom vilken samling som helst.
Dessa fyra metoder inkluderar:
- deleteOne ()
- deleteMany ()
- findOneAndDelete ()
- ta bort()
Var och en av ovanstående metoder används för att ta bort eller ta bort ett dokument från MongoDB-samlingen. I denna handledning kommer vi dock bara att fokusera på “DeleteOne” metod.
deleteOne Method
DeleteOne-metoden används för att radera ett specifikt dokument i en MongoDB-samling. Här har vi bara två parametrar som vi förstår vad vi ska ta bort från samlingen.
Syntax:
db.collection_name.deleteOne(query)
fråga - Detta är urvalskriterierna för borttagningsmetoden eller så kan du också säga detta som ett filter. Om du vill ta bort åldern för studenten som har angett namn i samlingen är namnet urvalskriteriet eller filtret.
Anta att vi har en personalsamling med personal-ID och anställd namn och vi vill ta bort en post med ett specifikt personal-ID. För detta scenario måste vi skapa en radera fråga som du kan se nedan.
Figur 7
Nu när du kör den här frågan raderas alla poster som matchas med frågan eller filtret.
Koda
db.staff.deleteOne({student_staff_id:2})
Figur 8: Output I MongoDB Shell
Figur 9: Output I Robo 3T
Slutsats
De uppdatering metoden används för att modifiera specifika fält i hela dokumentet inom samlingen av MongoDB. De deleteOne metoden används för att radera ett visst dokument i MongoDB-samlingen.
Här har vi lärt oss hur vi kan uppdatera enstaka eller flera dokument efter särskilda kriterier.
Vi såg också hur vi kan ta bort ett specifikt dokument i samlingen baserat på filtret. Vi kommer att diskutera de tre andra uppdaterings- och raderingsmetoderna i vår Avancerad MongoDB-handledningsserie .
I vår kommande handledning lär vi oss mer om objekt-ID i vilket dokument som helst i MongoDB-samlingen.
PREV-handledning | NÄSTA självstudie
Rekommenderad läsning
- MongoDB-frågedokument med Find () -metoden (exempel)
- Användning av markören i MongoDB med exempel
- Användning av ObjectId () i MongoDB med exempel
- MongoDB Sort () -metod med exempel
- MongoDB Skapa användare och tilldela roller med exempel
- 20+ MongoDB-handledning för nybörjare: Gratis MongoDB-kurs
- Infoga flera dokument i MongoDB med hjälp av arrays
- Nytt / Radera operatörer i C ++ med exempel