MongoDB学习笔记:插入记录(增)

完整的MongoDB学习笔记位于IT老兵博客

MongoDB学习笔记:插入记录(增)。

初衷

MongoDB的使用还是有一定难度的,官网讲解的一环牵扯一环,不容易一下子把握住重点,也不利于快速查询操作,所以整理一下,便于快速查找。另外,做一做笔记,对于记忆和理解也是有好处的,同时可以方便一些英语暂时不好的同学用来参考。

语法

1
2
3
3.2版本之后
db.collection.insertOne()
db.collection.insertMany()
1
2
3.2版本之前
db.collection.insert()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
db.collection.insert(
<document or array of documents>,
{
writeConcern: <document>,
ordered: <boolean>
}
)

db.collection.insertOne(
<document>,
{
writeConcern: <document>
}
)

db.collection.insertMany(
[ <document 1> , <document 2>, ... ],
{
writeConcern: <document>,
ordered: <boolean>
}
)
参数 类型 描述
document 文档或者数组 将要插入集合的文档或者文档数组。
writeConcern 文档 可选。待解释和细化。
ordered 布尔型 可选。插入数组时是否要按照顺序,默认为true。

实例
数据库:my_test,之前文章创建的数据库,创建数据库,参看这里
集合:test。
插入记录如下:

1
2
3
4
5
6
7
8
9
{
"_id" : ObjectId("5abb3b5bce69c048be080199"),
"meta" : {
"createAt" : ISODate("2018-03-28T06:51:07.579Z"),
"updateAt" : ISODate("2018-03-28T06:51:07.579Z")
},
"a" : "1",
"b" : "1",
}

语句:

1
2
3
4
5
6
7
8
9
db.test.insert({
"meta" : {
"createAt" : ISODate("2018-03-28T06:51:07.579Z"),
"updateAt" : ISODate("2018-03-28T06:51:07.579Z")
},
"a" : "1",
"b" : "1",
})
WriteResult({ "nInserted" : 1 })

看到最后这句,表示插入一条记录成功。
馈赠一条,为之后的例子做一个铺垫:

1
2
3
4
5
6
7
8
9
db.test.insert({
"meta" : {
"createAt" : ISODate("2018-03-28T06:51:07.579Z"),
"updateAt" : ISODate("2018-03-28T06:51:07.579Z")
},
"a" : "1",
"b" : "3",
})
WriteResult({ "nInserted" : 1 })

查看一下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
> db.test.find().pretty()
{
"_id" : ObjectId("5abb3b5bce69c048be080199"),
"meta" : {
"createAt" : ISODate("2018-03-28T06:51:07.579Z"),
"updateAt" : ISODate("2018-03-28T06:51:07.579Z")
},
"a" : "1",
"b" : "1"
}
{
"_id" : ObjectId("5abb3b5bce69c048be080120"),
"meta" : {
"createAt" : ISODate("2018-03-28T06:51:07.579Z"),
"updateAt" : ISODate("2018-03-28T06:51:07.579Z")
},
"a" : "1",
"b" : "3"
}

我们看到了两条记录,查询的语法请参考关于查询的文档。

参考

https://docs.mongodb.com/manual/tutorial/insert-documents/。
https://docs.mongodb.com/manual/reference/method/db.collection.insert/#db.collection.insert。