资讯专栏INFORMATION COLUMN

《聊聊mongodb》系列三 了解一下MongoDB插入文档的操作~

ityouknow / 1520人阅读

摘要:布尔类型,表示文档是否按照有序或者无序插入,默认是返回参数返回了含有操作状态的对象插入文档成功返回如下对象字段指明了插入文档的总数如果该操作遇到了错误对象将包含该错误信息例子四其它可以向集合中添加文档的方法和选项一起使用的。

上一节介绍了MongoDB的基本的命令,以及结构的了解,这一节的主题是介绍一下MongoDB的插入文档的操作的基础命令的使用,MongoDB当中文档的数据结构和json基本是一致的,用的事BSON格式,BSON是一种类json的一种二进制形式的存储格式,简称Binary JSON。

MongoDB插入文档

MongoDB 提供了以下办法向集合中插入文档,分别是:

db.collection.insertOne()

db.collection.insertMany()

db.collection.insert()

注意

1、在MongoDB中插入的时候,如果集合不存在,那么插入操作会创建相应的集合

2、MongoDB中,存储在集合当中的每一个文档都需要唯一的_id字段作为主键(primarY_key),如果插入的时候,遗漏了_id字段,则MongoDB字段会自己生成一个ObjectId

一、db.collection.insertOne()

该方法是3.2版+的才有的功能,主要用来向集合插入单个文档

1.1 语法
db.collection.insertOne(
   ,
   {
      writeConcern: 
   }
)

参数:

document:文档类型,一个要插入到集合的文档

writeConcern:文档类型,表示文档的写入策略,如果没填,则使用默认写入策略。

返回参数:

acknowledged:判断插入是否成功,是一个布尔值

insertedId:插入文档的_id的数值

1.2 例子

这个例子简单展示了insertOne的基础用法,以及_id是否插入使用情况

二、db.collection.insertMany()

该方法是3.2版+的才有的功能,主要是往集合中插入多个文档。

2.1 语法:
db.collection.insertMany(
   { [  , , ... ] },
   {
      writeConcern: ,
      ordered: 
   }
)

参数:

document:文档类型,一个要插入到集合的文档

writeConcern:文档类型,表示文档的写入策略,如果没填,则使用默认写入策略。

ordered :布尔类型,表示文档是否按照有序或者无序插入,默认是true

返回参数:

acknowledged:判断插入是否成功,是一个布尔值

insertedId:插入文档的_id的数值

2.2 例子

三、db.collection.insert()

db.collection.insert() 向集合插入一个或多个文档.要想插入一个文档,传递一个文档给该方法;要想插入多个文档,传递文档数组给该方法.

3.1 语法
db.collection.insert(
   ,
   {
     writeConcern: ,
     ordered: 
   }
)

参数:

document:文档类型,一个要插入到集合的文档或者一组文档的数组

writeConcern:文档类型,表示文档的写入策略,如果没填,则使用默认写入策略。

ordered :布尔类型,表示文档是否按照有序或者无序插入,默认是true

返回参数:

返回了含有操作状态的 WriteResult 对象.插入文档成功返回如下 WriteResult 对象:WriteResult({ "nInserted" : 1 })

nInserted 字段指明了插入文档的总数.如果该操作遇到了错误, WriteResult 对象将包含该错误信息.

3.2 例子

四、其它可以向集合中添加文档的方法

upsert: true选项一起使用的 db.collection.updateOne()。

upsert: true 选项一起使用的 db.collection.updateOne().

upsert: true 选项一起使用的 db.collection.updateMany() .

upsert: true 选项一起使用的 db.collection.findAndModify() .

upsert: true 选项一起使用的 db.collection.findOneAndUpdate() .

upsert: true 选项一起使用的 db.collection.findOneAndReplace().

db.collection.save().

db.collection.bulkWrite().

上述这些方法在之后的文章中会一一阐述。

今天简单描述了一下,MongoDB中的插入文档的操作方法,欢迎提出建议

推荐阅读:

《聊聊mongodb》系列一 认识mongodb及环境安装

《聊聊mongodb》系列二 mongoDB存储结构以及基础的shell命令

更多精彩内容,欢迎大家关注我的微信公众号:喝醉的清茶

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/19284.html

相关文章

  • 聊聊mongodb系列mongoDB存储结构以及基础shell命令

    摘要:进入数据库,然后查看拥有的集合查看当前操作的数据库,以及数据库版本,连接及端口号以下部分为创建数据库,我们刚创建的数据库并不在数据库的列表中,要显示它,我们需要向数据库插入一些数据。 跟着上一节,我们简单了解了下,什么是mongoDB? 这一节,我们简单的了解下mongodb的存储结构以及基础的shell命令。 一、mongodb的存储结构 接触mongodb之前,我们使用的都是关系型...

    Jacendfeng 评论0 收藏0
  • 聊聊毕业设计系列 --- 系统实现

    摘要:七牛云接入本系统的图片,音视频是放在七牛云,所以需要接入七牛云。在服务端通过接口请求来获取七牛云上传,客户端获取到七牛云,通过不同方案将带上。 效果展示 showImg(https://user-gold-cdn.xitu.io/2018/8/26/16576a709bd02f5f?w=1409&h=521&f=gif&s=30128195); showImg(https://user...

    null1145 评论0 收藏0
  • 聊聊毕业设计系列 --- 系统实现

    摘要:七牛云接入本系统的图片,音视频是放在七牛云,所以需要接入七牛云。在服务端通过接口请求来获取七牛云上传,客户端获取到七牛云,通过不同方案将带上。 效果展示 showImg(https://user-gold-cdn.xitu.io/2018/8/26/16576a709bd02f5f?w=1409&h=521&f=gif&s=30128195); showImg(https://user...

    qpal 评论0 收藏0
  • 聊聊mongodb系列一 认识mongodb及环境安装与配置

    摘要:目的是为应用提供扩展的高性能的数据存储解决方案。同时,的配置文件中的默认为,默认只有本机可以连接。 非关系数据库和关系型数据库的区别是什么? 实质:非关系型数据库的实质:非关系型数据库产品是传统关系型数据库的功能阉割版,通过减少用不到或很少用的功能,来大幅度提高产品性能。 价格:目前的非关系型数据库基本都是免费的,而比较有名气的关系型数据库都是收费的,比如:Oracle、DB2、MS...

    asoren 评论0 收藏0

发表评论

0条评论

ityouknow

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<