MongoDB 插入

插入文档

MongoDB文档的数据结构和JSON基本一样。

所有存储在集合中的数据都是BSON格式,BSON是一种类json的一种二进制形式的存储格式,简称Binary JSON。

insert

db.COLLECTION_NAME.insert(document)  
>db.col.insert({title: 'MongoDB 教程',
	description: 'MongoDB 是一个 Nosql 数据库',
	by: 'MongoDB中文网', 
	url: 'http://www.mongodb.org.cn', 
	tags: ['mongodb', 'database', 'NoSQL'],
	likes: 100  
})

insertone 与 insertMany

MongoDB 3.2 更新后新增以下两种新的文档插入命令如下:

db.collection.insertone ()
db.collection.insertMany()

使用 insertOne() 插入一条文档的代码如下:

db.test.iusertone( { item: "card", qty: 15 } );

使用 insertMany() 插入多条文档的代码如下:

db.test.insertMany([
    { item: "card", qty: 15 },
    { item: "envelope", qty: 20 },
    { item: "stamps", qty:30 }
]);

save

插入文档你也可以使用 db.col.save(document) 命令。如果不指定 _id 字段 save() 方法类似于 insert() 方法。如果指定 _id 字段,则会更新该 _id 的数据。

对于插入一个存在_id 字段的文档:

  • insert: 若新增数据的主键已经存在,则会抛org.springframework.dao.DuplicateKeyException 异常提示主键重复,不保存当前数据。
  • save: 若新增数据的主键已经存在,则会对当前已经存在的数据进行修改操作。

其他插入方式

MongoDB提供了以下将文档插入到集合中的方法:

与upsert:true选项一起使用时的db.collection.update()

db.collection.updateOne()与upsert:true选项一起使用时
db.collection.updateMany()与upsert:true选项一起使用时
db.collection.findAndModify()与upsert:true选项一起使用时
db.collection.findOneAndUpdate()与upsert:true选项一起使用时的
db.collection.findOneAndReplace()与upsert:true选项一起使用时。
db.collection.save()
db.collection.bulkWrite()
发布了111 篇原创文章 · 获赞 0 · 访问量 2074

猜你喜欢

转载自blog.csdn.net/weixin_38932035/article/details/105144112