学习什么是MongoDB的insertOne方法

323 阅读3分钟

MongoDB是一个NoSQL数据库,可以执行DBMS(数据库管理系统)可以执行的基本操作。MongoDB支持几种方法和函数,用于插入过程。insertOne()属于插入方法,该方法用于在MongoDB集合中插入一个文档。insertOne()方法还创建了一个集合,如果它不存在的话。

MongoDB以文档的形式存储数据,这些文档被保存在一个集合中。insertOne方法的主要目的是在MongoDB集合中添加一个文档;然而,如果该集合不存在,那么该方法也会创建该集合。鉴于该方法的重要性,我们今天的指南主要是演示MongoDB中insertOne方法的使用。

insertOne在MongoDB中如何工作

在MongoDB中使用insertOne方法的语法如下

>db.collection-name.insertOne()

上面的语法执行了以下的附加操作。

创建一个集合:如果指定的集合不存在,那么它也将创建这个集合。

指定唯一的ID:在任何数据库中,为数据指定唯一的ID是非常重要的。insertOne()方法允许你在执行插入时为任何文档添加一个唯一的ID,并且只有当用户忘记为文档分配该ID时才会执行该分配。

如何在MongoDB中使用insertOne方法

本节包含了在MongoDB中使用insertOne方法的例子;我们分成了几个例子来表达这个方法的个别用法。

例1:使用insertOne()方法创建一个集合并插入一个文档

我们在这里使用一个名为 "store"的MongoDB数据库,它包含以下集合。

>show collections

我们想在 "laptops"集合中添加一个文档,而它在 "store"中并不存在。下面提到的命令将创建这个集合并将文档添加到其中。

>db.laptops.insertOne({Make: ["ACER","HP","DELL"], processor: ["intel", "AMD"]})

该命令被执行,你可以看到,该文档的唯一ID也被生成。

例2:使用insertOne()方法来处理唯一ID

在任何数据库中,主键或唯一ID在操作数据时都有关键作用。在MongoDB中,有两种方法可以为任何文档设置一个唯一的ID。

自动分配:如果唯一ID不是由用户指定的,那么insertOne()方法会自行将其分配给文档。下面的命令不包含任何唯一的id。

>db.smartphones.insertOne({OS: "Android", Qty: 500, Make: ["Samsung", "MI","Sony"]})

你也可以通过发出下面提到的命令来验证唯一ID的分配。

>db.smartphones.find().pretty()

注意:本例中使用的集合名为 "smartphones"。

由用户定义的唯一ID: 此外,如果用户在插入时定义了ID,那么insertOne将不会干扰到ID的分配。例如,下面提到的命令在插入文档时也有一个"_id"字段。

>db.distributions.insertOne({_id: 1, OS: "Linux", available: ["Debian", "Linux Mint", "Ubuntu", "Kubuntu"]})

输出显示,唯一的id是 "1",因为它是在命令中定义的。此外,你也可以通过下面的命令来验证它。

 >db.distributions.find().pretty()

注意:在这个例子中,集合的名称是 "distributions"。

总结

广泛的Mongo函数列表缓解了基于MongoDB的数据库的数据处理机制。在这篇文章中,我们提供了一个简短的指南来使用MongoDB中的insertOne()方法。insertOne()属于数据库的插入操作,是MongoDB的insert()方法家族中的一个子方法。在遵循本指南之后,一个MongoDB新手将能够在MongoDB集合中插入一个新的文档。此外,通过这个方法,一个中级用户可以插入一个文档并建立一个集合。