mongodb数据库教程-MongoDB插入文档

跨零代码为大家提供高品质的解决方案,请大家多多来访,跨零不胜感激,在此谢过。

在本章中,我们将学习如何在MongoDB集合中插入文档。

insert()方法

要将数据插入到 MongoDB 集合中,需要使用 MongoDB 的 insert()save()方法。

语法

insert()命令的基本语法如下:

>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, }) 

这里mycol是集合的名称,在前一章中所创建的。如果数据库中不存在集合,则MongoDB将创建此集合,然后将文档插入到该集合中。

在插入的文档中,如果不指定_id参数,那么 MongoDB 会为此文档分配一个唯一的ObjectId。

_id为集合中的每个文档唯一的12个字节的十六进制数。 12字节划分如下 –

_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id,     3 bytes incrementer) 

要在单个查询中插入多个文档,可以在insert()命令中传递文档数组。如下所示 –

> db.mycol.insert([    {       _id: 101,       title: 'MongoDB Guide',        description: 'MongoDB is no sql database',       by: 'yiibai tutorials',       url: 'http://www.yiibai.com',       tags: ['mongodb', 'database', 'NoSQL'],       likes: 100    },     {       _id: 102,       title: 'NoSQL Database',        description: "NoSQL database doesn't have tables",       by: 'yiibai tutorials',       url: 'http://www.yiibai.com',       tags: ['mongodb', 'database', 'NoSQL'],       likes: 210,        comments: [          {             user:'user1',             message: 'My first comment',             dateCreated: new Date(2017,11,10,2,35),             like: 0           }       ]    },    {       _id: 104,       title: 'Python Quick Guide',        description: "Python Quick start ",       by: 'yiibai tutorials',       url: 'http://www.yiibai.com',       tags: ['Python', 'database', 'NoSQL'],       likes: 30,        comments: [          {             user:'user1',             message: 'My first comment',             dateCreated: new Date(2018,11,10,2,35),             like: 590           }       ]    } ]) 

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

其它插入文档的方法

db.collection.insertOne()方法

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.insertOne()方法返回包含新插入的文档的`_id“`字段值的文档。

执行结果如下 –

> db.inventory.insertOne( ...    { item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } } ... ) {         "acknowledged" : true,         "insertedId" : ObjectId("5955220846be576f199feb55") } > 

db.collection.insertMany()方法

db.collection.insertMany()方法将多个文档插入到集合中,可将一系列文档传递给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" } } ]) 

insertMany()返回包含新插入的文档_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" } } ... ]) {         "acknowledged" : true,         "insertedIds" : [                 ObjectId("59552c1c46be576f199feb56"),                 ObjectId("59552c1c46be576f199feb57"),                 ObjectId("59552c1c46be576f199feb58")         ] } > 

  

从零到一,创造未来!跨零综合IT问题解决服务站,欢迎你的到来。Oracle数据库教程 mongodb数据库教程/a> 只为你绽放。

本文固定链接: http://kua0.com/2019/04/09/mongodb数据库教程-mongodb插入文档/

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注