kemas kini

Bahasa Inggeris [ˌʌpˈdeɪt] AS [ʌpˈdet]

vt

Kaedah kemas kini MongoDB(). sintaks

Fungsi: kemas kini() kaedah untuk mengemas kini dokumen dalam koleksi

Sintaks: db.collection.update(<query>,<kemas kini>, {upsert: <boolean>,multi: <boolean>,boolean> ;,writeConcern: <document>})

Parameter: query: kemas kini syarat pertanyaan, serupa dengan tempat di belakang pertanyaan kemas kini sql. kemas kini: objek kemas kini dan beberapa pengendali kemas kini (seperti $, $inc...), dsb., juga boleh difahami sebagai upsert selepas ditetapkan dalam pertanyaan kemas kini sql: pilihan, parameter ini bermakna jika tiada kemas kini Rekod, sama ada untuk memasukkan objNew, benar bermaksud memasukkan, lalai adalah palsu, bukan memasukkan. multi: Pilihan, nilai lalai mongodb adalah palsu, dan hanya rekod pertama yang ditemui dikemas kini Jika parameter ini benar, semua berbilang rekod yang ditemui mengikut syarat akan dikemas kini. writeConcern: Pilihan, tahap di mana pengecualian dilemparkan.

Kaedah kemas kini MongoDB(). contoh

我们在集合 col 中插入如下数据:

>db.col.insert({
    title: 'MongoDB 教程', 
    description: 'MongoDB 是一个 Nosql 数据库',
    by: 'php中文网',
    url: '//m.sbmmt.com',
    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" : "//m.sbmmt.com",
        "tags" : [
                "mongodb",
                "database",
                "NoSQL"
        ],
        "likes" : 100
}
>
可以看到标题(title)由原来的 "MongoDB 教程" 更新为了 "MongoDB"。

以上语句只会修改第一条发现的文档,如果你要修改多条相同的文档,则需要设置 multi 参数为 true。

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