Osnovna ažuriranja dokumenata
MongoDB pruža naredbu update () za ažuriranje dokumenata zbirke. Da biste ažurirali samo dokumente koje želite ažurirati, u izjavu o ažuriranju možete dodati kriterije tako da se ažuriraju samo odabrani dokumenti.
Osnovni parametri u naredbi uvjet su za koji dokument treba ažurirati, a sljedeći je izmjena koju treba izvršiti.
Sljedeći primjer pokazuje kako se to može učiniti.
Korak 1) Izdajte naredbu za ažuriranje
Korak 2) Odaberite uvjet kojim želite odlučiti koji dokument treba ažurirati. U našem primjeru želimo ažurirati dokument koji ima ID zaposlenika 22.
Korak 3) Pomoću naredbe set promijenite naziv polja
Korak 4) Odaberite naziv polja koji želite izmijeniti i unesite novu vrijednost u skladu s tim.
db.Employee.update({"Employeeid" : 1},{$set: { "EmployeeName" : "NewMartin"}});
Ako se naredba uspješno izvrši, prikazat će se sljedeći izlaz
Izlaz:
Izlaz jasno pokazuje da se jedan zapis podudarao s uvjetom i stoga je relevantna vrijednost polja modificirana.
Ažuriranje više vrijednosti
Da biste osigurali da se istovremeno ažuriraju višestruki / skupni dokumenti u MongoDB-u, morate upotrijebiti opciju multi jer se u suprotnom istodobno mijenja samo jedan dokument.
Sljedeći primjer pokazuje kako ažurirati mnoge dokumente.
U ovom ćemo primjeru prvo pronaći dokument koji ima ID zaposlenika kao "1" i promijeniti ime zaposlenika iz "Martin" u "NewMartin"
Korak 1) Izdajte naredbu za ažuriranje
Korak 2) Odaberite uvjet kojim želite odlučiti koji dokument treba ažurirati. U našem primjeru želimo da se dokument koji ima ID zaposlenika "1" ažurira.
Korak 3) Odaberite imena polja koja želite izmijeniti i unesite njihove nove vrijednosti u skladu s tim.
db.Employee.update({Employeeid : 1},{$set :{"EmployeeName" : "NewMartin","Employeeid" : 22}})
Ako se naredba uspješno izvrši i ako pokrenete naredbu "pronađi" za traženje dokumenta s ID-om zaposlenika kao 22, vidjet ćete sljedeći izlaz
Izlaz:
Izlaz jasno pokazuje da se jedan zapis podudarao s uvjetom i stoga je relevantna vrijednost polja modificirana.