Pagrindiniai dokumentų atnaujinimai
„MongoDB“ pateikia komandą „update“ (atnaujinti), kad atnaujintų kolekcijos dokumentus. Norėdami atnaujinti tik tuos dokumentus, kuriuos norite atnaujinti, prie naujinimo teiginio galite pridėti kriterijus, kad tik atnaujinti dokumentai būtų atnaujinti.
Pagrindiniai komandos parametrai yra sąlyga, kurią reikia atnaujinti, o kitas - modifikacija, kurią reikia atlikti.
Šis pavyzdys parodo, kaip tai galima padaryti.
1 žingsnis. Išleiskite naujinimo komandą
2 žingsnis) Pasirinkite sąlygą, kurią norite naudoti norėdami nuspręsti, kurį dokumentą reikia atnaujinti. Mūsų pavyzdyje norime atnaujinti dokumentą, kurio darbuotojo ID yra 22.
3 žingsnis) Norėdami pakeisti lauko pavadinimą, naudokite komandą set
4 žingsnis) Pasirinkite lauko pavadinimą, kurį norite pakeisti, ir atitinkamai įveskite naują vertę.
db.Employee.update({"Employeeid" : 1},{$set: { "EmployeeName" : "NewMartin"}});
Jei komanda sėkmingai vykdoma, bus rodoma ši išvestis
Išvestis:
Išvestis aiškiai parodo, kad vienas įrašas atitiko sąlygą, todėl atitinkama lauko vertė buvo pakeista.
Kelių verčių atnaujinimas
Norėdami užtikrinti, kad keli / masiniai dokumentai būtų atnaujinami tuo pačiu metu „MongoDB“, turite naudoti daugialypę parinktį, nes kitaip pagal numatytuosius nustatymus vienu metu modifikuojamas tik vienas dokumentas.
Šis pavyzdys rodo, kaip atnaujinti daugelį dokumentų.
Šiame pavyzdyje pirmiausia rasime dokumentą, kurio darbuotojo ID yra „1“, ir pakeisime darbuotojo vardą iš „Martin“ į „NewMartin“
1 žingsnis. Išleiskite naujinimo komandą
2 žingsnis) Pasirinkite sąlygą, kurią norite naudoti norėdami nuspręsti, kurį dokumentą reikia atnaujinti. Mūsų pavyzdyje norime, kad būtų atnaujintas dokumentas, kurio darbuotojo ID yra „1“.
3 žingsnis) Pasirinkite, kuriuos lauko pavadinimus norite keisti, ir atitinkamai įveskite jų naują vertę.
db.Employee.update({Employeeid : 1},{$set :{"EmployeeName" : "NewMartin","Employeeid" : 22}})
Jei komanda sėkmingai vykdoma ir paleidus komandą „rasti“ ieškokite dokumento, kurio darbuotojo ID yra 22, pamatysite tokį išvestį
Išvestis:
Išvestis aiškiai parodo, kad vienas įrašas atitiko sąlygą, todėl atitinkama lauko vertė buvo pakeista.