Python MongoDB 문서 삽입

MongoDB의 문서는 SQL 데이터베이스의 기록과 동일합니다。

콜렉션 삽입

MongoDB에 기록이나 우리가 문서라고 부르는 것을 콜렉션에 삽입하려면 다음과 같이 사용합니다: insert_one() 메서드。

insert_one() 메서드의 첫 번째 파라미터는 삽입할 문서에 포함될 각 필드 이름과 값을 포함한 딕셔너리입니다。

예제

"customers" 콜렉션에 기록을 삽입합니다:

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
mydict = { "이름": "Bill", "주소": "Highway 37" }
x = mycol.insert_one(mydict)

예제 실행

필드를 반환합니다

insert_one() 메서드는 InsertOneResult 객체를 반환하며, 이 객체는 다음과 같은 속성을 가집니다: inserted_id를 사용하여 삽입된 문서의 id를 저장합니다。

예제

"customers" 콜렉션에 다른 기록을 삽입하고 _id 필드의 값을 반환합니다:

mydict = { "이름": "Peter", "주소": "Lowstreet 27" }
x = mycol.insert_one(mydict)
print(x.inserted_id)

예제 실행

지정하지 않으면 _id 필드를 지정하지 않으면 MongoDB가 자동으로 추가하고 각 문서에 독립적인 ID를 할당합니다。

위의 예제에서는 _id 필드가 있기 때문에 MongoDB는 기록(문서)에 독립적인 _id를 할당합니다。

여러 문서 삽입

MongoDB의 콜렉션에 여러 문서를 삽입하려면 다음과 같이 사용합니다: insert_many() 메서드。

insert_many() 메서드의 첫 번째 파라미터는 삽입할 데이터를 포함한 딕셔너리 목록입니다:

예제

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
mylist = [
  { "이름": "Amy", "주소": "Apple st 652"},
  { "이름": "Hannah", "주소": "Mountain 21"},
  { "이름": "Michael", "주소": "Valley 345"},
  { "이름": "Sandy", "주소": "Ocean blvd 2"},
  { "이름": "Betty", "주소": "Green Grass 1"},
  { "이름": "Richard", "주소": "Sky st 331"},
  { "이름": "Susan", "주소": "One way 98"},
  { "name": "비키", "address": "양귀비 정원 2"},
  { "name": "벤", "address": "파크 레인 38"},
  { "name": "윌리엄", "address": "센트럴 스트리트 954"},
  { "name": "찰크", "address": "메인 로드 989"},
  { "name": "비올라", "address": "사이드웨이 1633"}
]
x = mycol.insert_many(mylist)
# 삽입된 문서의 _id 값 목록을 출력:
print(x.inserted_ids)

예제 실행

insert_many() 메서드는 InsertManyResult 객체를 반환하며, 이 객체는 다음과 같은 속성을 가집니다 inserted_ids삽입된 문서의 id를 저장하는 데 사용됩니다.

지정된 ID를 가진 여러 문서 삽입

MongoDB가 문서에 유일한 id를 할당하지 않기를 원한다면, 문서를 삽입할 때 _id 필드를 지정할 수 있습니다.

값은 유일해야 합니다. 두 파일은 같은 _id를 가질 수 없습니다.

예제

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
mylist = [
  { "_id": 1, "name": "ジョン", "address": "하이웨이 37"},
  { "_id": 2, "name": "피터", "address": "로스트리트 27"},
  { "_id": 3, "name": "에미", "address": "애플 스트리트 652"},
  { "_id": 4, "name": "한나", "address": "마운틴 21"},
  { "_id": 5, "name": "마이클", "address": "벨리 345"},
  { "_id": 6, "name": "산디", "address": "cean 블루드 2"},
  { "_id": 7, "name": "베티", "address": "그린 그래스 1"},
  {"_id": 8, "name": "Richard", "address": "Sky st 331"}
  {"_id": 9, "name": "Susan", "address": "One way 98"},
  {"_id": 10, "name": "Vicky", "address": "Yellow Garden 2"},
  {"_id": 11, "name": "Ben", "address": "Park Lane 38"},
  {"_id": 12, "name": "William", "address": "Central st 954"},
  {"_id": 13, "name": "Chuck", "address": "Main Road 989"},
  {"_id": 14, "name": "Viola", "address": "Sideway 1633"}
]
x = mycol.insert_many(mylist)
# 삽입된 문서의 _id 값 목록을 출력:
print(x.inserted_ids)

예제 실행