Login
网站首页 > 文章中心 > 其它

MongoDB插入数据的3种方法

作者:小编 更新时间:2023-08-10 14:04:59 浏览量:282人看过

insert()函数插入数据

MongoDB插入数据的3种方法-图1

insert()函数是 MongoDB 中最基本和常见的插入方法之一.下面是insert()函数的语法和参数:

db.collection.insert({
   "name":"John",
   "age":30,
   "email":"john@example.com"
})

其中,db.collection代表要插入数据的集合;{...}则是要插入的数据,数据是以键值对的方式表示的.

下面是一个简单的示例,演示如何使用insert()函数插入一条数据到 mycollection 集合中:

> use mydatabase
switched to db mydatabase
> db.mycollection.insert({
...   "name":"Tom",
...   "age":25,
...   "email":"tom@example.com"
... })
WriteResult({ "nInserted" : 1 })

其中,我们先使用 use 命令选择了 mydatabase 数据库,然后在 mycollection 集合中插入了一条数据.insert()函数会返回WriteResult对象,对象中包含了插入操作的结果信息.在本例中,因为插入成功了一条数据,所以结果信息为 {"nInserted": 1}.如果插入失败,则会返回相应的错误信息.

save()函数插入数据

save()函数也是一个常用的插入方法.该方法首先会查找是否存在有符合查询条件的数据,若存在则会更新该条数据,否则则会插入一条新的数据.下面是save()函数的语法和参数:

db.collection.save({
   "name":"John",
   "age":30,
   "email":"john@example.com"
})

其中,db.collection代表要插入数据的集合;{...}则是要插入/更新的数据,数据是以键值对的方式表示的.

下面是一个简单的示例,演示如何使用save()函数插入一条数据到 mycollection 集合中:

> use mydatabase
switched to db mydatabase
> db.mycollection.save({
...   "name":"Tom",
...   "age":25,
...   "email":"tom@example.com"
... })
WriteResult({ "nInserted" : 1 })

在本例中,save()函数会将要插入的数据与已经存在的数据进行比较,由于 mydatabase.mycollection 中没有 name 为 Tom 的数据,所以 save() 函数会将新的数据插入到集合中,同时返回 {"nInserted": 1}.

bulkWrite()函数插入数据

最后一个常用的插入方法是 bulkWrite() 函数,该方法可以一次性插入多条数据,并且支持批量操作.下面是bulkWrite()函数的语法和参数:

db.collection.bulkWrite([
   { insertOne : { "name" : "John", "age" : 30, "email" : "john@example.com" } },
   { insertOne : { "name" : "Tom", "age" : 25, "email" : "tom@example.com" } }
])

其中,db.collection代表要插入数据的集合;[...]中的数据是要插入的数据,数据是以insertOne对象的方式表示的.

下面是一个简单的示例,演示如何使用bulkWrite()函数插入多条数据到 mycollection 集合中:

> use mydatabase
switched to db mydatabase
> db.mycollection.bulkWrite([
...     { insertOne : { "name" : "John", "age" : 30, "email" : "john@example.com" } },
...     { insertOne : { "name" : "Tom", "age" : 25, "email" : "tom@example.com" } }
... ])
{
    ]
}

在本例中,bulkWrite()函数会一次性插入两条数据,同时返回插入的结果信息.这里需要注意的是,bulkWrite()函数中的 insertOne 对象表示插入一条数据,如果要插入多条数据,需要在 [...] 中添加相应的 insertOne 对象即可.

以上就是土嘎嘎小编大虾米为大家整理的相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章