美文网首页
MongoDB文档操作

MongoDB文档操作

作者: bless_vi | 来源:发表于2018-05-30 16:06 被阅读0次

    MongoDB插入文档:


db.COLLECTION_NAME.insert(document)

示例:

db.mycol.insert(

    {

        _id: 100,

        title: 'MongoDB Overview',

        description: 'MongoDB is no sql database',

        by: 'yiibai tutorials',

        url: 'http://www.yiibai.com',

        tags: [

                'mongodb',

                'database',

                'NoSQL'

            ],

        likes: 100,

    }

)

    在插入的文档中,如果不指定_id参数,那么 MongoDB 会为此文档分配一个唯一的ObjectId。_id为集合中的每个文档唯一的12个字节的十六进制数。

    insert插入多个文档,文档内容像json一样,逗号分割内容。

    MongoDB也可以使用db.post.save(document)插入文档。 如果不在文档中指定_id,那么save()方法将与insert()方法一样自动分配ID的值。如果指定_id,则将以save()方法的形式替换包含_id的文档的全部数据。

    MongoDB还可以使用db.collection.insertOne()方法插入文档。此方法将单个文档插入到集合中。以下示例将新文档插入到库存集合中。 如果文档没有指定_id字段,MongoDB会自动将_id字段与ObjectId值添加到新文档。

db.inventory.insertOne(

    { item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } })

    插入多个数据可使用db.collection.insertMany()方法。同样没有指定_id字段,MongoDB会向每个文档添加一个ObjectId值的_id字段。

db.inventory.insertMany([

{ item: "journal", qty: 25, tags: ["blank", "red"], size: { h: 14, w: 21, uom: "cm" } },

{ item: "mat", qty: 85, tags: ["gray"], size: { h: 27.9, w: 35.5, uom: "cm" } },

{ item: "mousepad", qty: 25, tags: ["gel", "blue"], size: { h: 19, w: 22.85, uom: "cm" } }

])

       MongoDB更新文档:

  db.collection.update(

    <query>,

    <update>,

    {

        upsert: <boolean>,

        multi:<boolean> ,

        writeConcern: <document>

    } 

)

参数说明:

            query : update的查询条件,类似sql update查询内where后面的。

            update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的

            upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。

                multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。

writeConcern :可选,抛出异常的级别。

示例:

db.inventory.update({'qty':100},{$set:{'qty':211}})

 MongoDB删除文档:


    只删除一条文档记录

db.collection.remove(

    <query> ,

    {

        justOne: <boolean> ,

        writeConcern:<document>

     }

)

参数说明:

    query :(可选)删除的文档的条件。

    justOne : (可选)如果设为 true 或 1,则只删除一个文档。

    writeConcern :(可选)抛出异常的级别。

db.inventory.remove({'_id': ObjectId("5b06675a430a28f69e668f15")})

    删除集合:

db.mycol.remove()

也可以这样删除集合:

db.inventory.deleteMany({})

相关文章

网友评论

      本文标题:MongoDB文档操作

      本文链接:https://www.haomeiwen.com/subject/dfotsftx.html