update

English [??p?de?t] US [?p?det]

vt. Mettre à jour, moderniser, modifier

Modifier les informations ou les instances mises à jour?;

Méthode MongoDB update() syntaxe

Fonction?: Méthode update() pour mettre à jour les documents de la collection

Syntaxe?: db.collection.update(<query>,<update>, {upsert: <boolean>,multi: <boolean> ;,writeConcern?: <document>})

Paramètres?: query?: conditions de requête de mise à jour, similaires à celles derrière la requête de mise à jour SQL. update : l'objet de mise à jour et certains opérateurs de mise à jour (tels que $, $inc...), etc., peuvent également être compris comme upsert après avoir été définis dans la requête de mise à jour SQL : facultatif, ce paramètre signifie que s'il n'y a pas d'enregistrement de mise à jour, que ce soit pour insérer objNew, true signifie insérer, la valeur par défaut est false, pas insérer. multi : Facultatif, la valeur par défaut de mongodb est false et seul le premier enregistrement trouvé est mis à jour. Si ce paramètre est vrai, tous les enregistrements multiples trouvés selon les conditions seront mis à jour. writeConcern?: facultatif, niveau auquel l'exception est levée.

Méthode MongoDB update() exemple

我們在集合 col 中插入如下數據:

>db.col.insert({
    title: 'MongoDB 教程', 
    description: 'MongoDB 是一個 Nosql 數據庫',
    by: 'php中文網',
    url: 'http://m.miracleart.cn',
    tags: ['mongodb', 'database', 'NoSQL'],
    likes: 100
})
接著我們通過 update() 方法來更新標題(title):

>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })   # 輸出信息
> db.col.find().pretty()
{
        "_id" : ObjectId("56064f89ade2f21f36b03136"),
        "title" : "MongoDB",
        "description" : "MongoDB 是一個 Nosql 數據庫",
        "by" : "php中文網",
        "url" : "http://m.miracleart.cn",
        "tags" : [
                "mongodb",
                "database",
                "NoSQL"
        ],
        "likes" : 100
}
>
可以看到標題(title)由原來的 "MongoDB 教程" 更新為了 "MongoDB"。

以上語句只會修改第一條發(fā)現(xiàn)的文檔,如果你要修改多條相同的文檔,則需要設置 multi 參數為 true。

>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}},{multi:true})