MongoDB Update() dokumentum példával
Alapvető dokumentumfrissítések
MongoDB az update() parancsot biztosítja egy gyűjtemény dokumentumainak frissítéséhez. Ha csak a frissíteni kívánt dokumentumokat szeretné frissíteni, a frissítési utasításhoz feltételeket adhat hozzá, így csak a kiválasztott dokumentumok kerülnek frissítésre.
A parancs alapvető paraméterei egy feltétel, amelyhez a dokumentumot frissíteni kell, a következő pedig az elvégzendő módosítás.
A következő példa bemutatja, hogyan lehet ezt megtenni.
Step 1) Adja ki a frissítési parancsot
Step 2) Válassza ki a feltételt, amellyel eldöntheti, hogy melyik dokumentumot kell frissíteni. Példánkban frissíteni szeretnénk a 22-es alkalmazotti azonosítóval rendelkező dokumentumot.
Step 3) A set paranccsal módosítsa a mező nevét
Step 4) Válassza ki a módosítani kívánt mező nevét, és ennek megfelelően adja meg az új értéket.
db.Employee.update( {"Employeeid" : 1}, {$set: { "EmployeeName" : "NewMartin"}});
Ha a parancs sikeresen végrehajtásra került, a következő kimenet jelenik meg
output:
A kimenet egyértelműen mutatja, hogy egy rekord megfelelt a feltételnek, és így a vonatkozó mezőérték módosult.
Több érték frissítése
Annak biztosítása érdekében, hogy több/tömeges dokumentum egyidejűleg frissüljön MongoDB a több opciót kell használnia, mert egyébként alapértelmezés szerint egyszerre csak egy dokumentum módosul.
A következő példa bemutatja, hogyan frissíthet sok dokumentumot.
Ebben a példában először megkeressük azt a dokumentumot, amelynek az alkalmazotti azonosítója „1”, és az alkalmazott nevét „Martin”-ról „NewMartin”-ra módosítjuk.
Step 1) Adja ki a frissítési parancsot
Step 2) Válassza ki a feltételt, amellyel eldöntheti, hogy melyik dokumentumot kell frissíteni. Példánkban azt a dokumentumot szeretnénk frissíteni, amelynek alkalmazotti azonosítója „1”.
Step 3) Válassza ki a módosítani kívánt mezőneveket, és ennek megfelelően adja meg az új értéküket.
db.Employee.update ( { Employeeid : 1 }, { $set : { "EmployeeName" : "NewMartin", "Employeeid" : 22 } } )
Ha a parancs sikeresen végrehajtásra került, és ha futtatja a "megtalálja" paranccsal megkeresheti a 22-es alkalmazotti azonosítójú dokumentumot, akkor a következő kimenet jelenik meg
output:
A kimenet egyértelműen mutatja, hogy egy rekord megfelelt a feltételnek, és így a vonatkozó mezőérték módosult.