MongoDB-문서 삽입
이 장에서는 MongoDB 컬렉션에 문서를 삽입하는 방법을 배웁니다.
insert () 메서드
MongoDB 컬렉션에 데이터를 삽입하려면 MongoDB의 insert() 또는 save() 방법.
통사론
기본 구문 insert() 명령은 다음과 같습니다-
>db.COLLECTION_NAME.insert(document)
예
> db.users.insert({
... _id : ObjectId("507f191e810c19729de860ea"),
... title: "MongoDB Overview",
... description: "MongoDB is no sql database",
... by: "tutorials point",
... url: "http://www.tutorialspoint.com",
... tags: ['mongodb', 'database', 'NoSQL'],
... likes: 100
... })
WriteResult({ "nInserted" : 1 })
>
여기 mycol이전 장에서 만든 컬렉션 이름입니다. 컬렉션이 데이터베이스에 없으면 MongoDB는이 컬렉션을 만든 다음 문서를 삽입합니다.
삽입 된 문서에서 _id 매개 변수를 지정하지 않으면 MongoDB는이 문서에 고유 한 ObjectId를 할당합니다.
_id는 컬렉션의 모든 문서에 대해 고유 한 12 바이트 16 진수입니다. 12 바이트는 다음과 같이 나뉩니다.
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
다음과 같이 문서 배열을 insert () 메서드에 전달할 수도 있습니다.
> db.createCollection("post")
> db.post.insert([
{
title: "MongoDB Overview",
description: "MongoDB is no SQL database",
by: "tutorials point",
url: "http://www.tutorialspoint.com",
tags: ["mongodb", "database", "NoSQL"],
likes: 100
},
{
title: "NoSQL Database",
description: "NoSQL database doesn't have tables",
by: "tutorials point",
url: "http://www.tutorialspoint.com",
tags: ["mongodb", "database", "NoSQL"],
likes: 20,
comments: [
{
user:"user1",
message: "My first comment",
dateCreated: new Date(2013,11,10,2,35),
like: 0
}
]
}
])
BulkWriteResult({
"writeErrors" : [ ],
"writeConcernErrors" : [ ],
"nInserted" : 2,
"nUpserted" : 0,
"nMatched" : 0,
"nModified" : 0,
"nRemoved" : 0,
"upserted" : [ ]
})
>
사용할 수있는 문서를 삽입하려면 db.post.save(document)또한. 지정하지 않으면_id 문서에서 save() 방법은 다음과 동일하게 작동합니다. insert()방법. _id를 지정하면 save () 메서드에 지정된대로 _id가 포함 된 문서의 전체 데이터를 대체합니다.
insertOne () 메서드
컬렉션에 문서를 하나만 삽입해야하는 경우이 방법을 사용할 수 있습니다.
통사론
insert () 명령의 기본 구문은 다음과 같습니다.
>db.COLLECTION_NAME.insertOne(document)
예
다음 예제는 empDetails라는 새 컬렉션을 만들고 insertOne () 메서드를 사용하여 문서를 삽입합니다.
> db.createCollection("empDetails")
{ "ok" : 1 }
> db.empDetails.insertOne(
{
First_Name: "Radhika",
Last_Name: "Sharma",
Date_Of_Birth: "1995-09-26",
e_mail: "[email protected]",
phone: "9848022338"
})
{
"acknowledged" : true,
"insertedId" : ObjectId("5dd62b4070fb13eec3963bea")
}
>
insertMany () 메서드
insertMany () 메서드를 사용하여 여러 문서를 삽입 할 수 있습니다. 이 방법을 사용하려면 문서 배열을 전달해야합니다.
예
다음 예제에서는 insertMany () 메서드를 사용하여 세 개의 다른 문서를 empDetails 컬렉션에 삽입합니다.
> db.empDetails.insertMany(
[
{
First_Name: "Radhika",
Last_Name: "Sharma",
Date_Of_Birth: "1995-09-26",
e_mail: "[email protected]",
phone: "9000012345"
},
{
First_Name: "Rachel",
Last_Name: "Christopher",
Date_Of_Birth: "1990-02-16",
e_mail: "[email protected]",
phone: "9000054321"
},
{
First_Name: "Fathima",
Last_Name: "Sheik",
Date_Of_Birth: "1990-02-16",
e_mail: "[email protected]",
phone: "9000054321"
}
]
)
{
"acknowledged" : true,
"insertedIds" : [
ObjectId("5dd631f270fb13eec3963bed"),
ObjectId("5dd631f270fb13eec3963bee"),
ObjectId("5dd631f270fb13eec3963bef")
]
}
>