스파르타코딩/스파르타코딩 3주차

pymongo 사용 (insert, find, update, delete)

usop 2022. 6. 6. 15:50

 

pymongo 기본 사용 코드

from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta

조금 설명하자면 맨 첫줄은 import 하여 pymongo를 연결.

두번째줄은 mongodb에 접속

세번째는 dpsparta라는 db에 접속할 것입니다.(그런 db가 없다면 생성)

 

 

 

데이터 명령어 4가지

# insert 데이터 입력
# find 데이터 찾기
# update 데이터 수정
# delete 데이터 삭제

 

 

###  1. insert 데이터 입력해보기  ###

 

doc = {'name':'bobby','age':21}
db.users.insert_one(doc)

첫째줄 - 입력할 데이터 내용

두번째줄 - db에 users라는 컬렉션에 insert 해라.

이름 bobby, 나이 21 데이터가 생성되었다.

같은 방법으로 몇명 더 데이터를 추가해보았다. (id 값은 자동으로 생성된 유니크값)

jhon , smith , jane 추가 입력

 

 

 

###  2.  find 데이터 찾아보기  ###

 

 

21살 bobby와 jane을 찾아보려한다.

same_ages = list(db.users.find({'age':21},{'_id':False}))
print(same_ages)

설명하자면 same_ages 라는 변수안에 담아라 = db.users라는 데이터 안에 {'age':21} 인 데이터를 {'_id':False} 유니크값인 id는 적지 말고.

 

print(same_ages)

 

데이터를 하나만 찾아올때는 find_one 을 사용하면 된다.

user = db.users.find_one({'name':'bobby'},{'_id':False})
print(user)

만약 bobby라는 사람이 여러명이여도 맨 위에 bobby 하나만 가져온다.

 

 

 

###  3.  update 데이터 내용 추가(수정하기)  ###

 

 

bobby라는 이름을 가진 사람을 찾아서 나이를 19살로 수정해보자

db.users.update_one({'name':'bobby'},{'$set':{'age':19}})

 

19살로 수정

* 여러개의 데이터를 바꿀때 update_many 를 사용하기도 하지만 한번에 여러가지 데이터를 바꾸는 일이므로

사용하기 앞서 굉장히 신중해야하다.

 

 

 

 

 

###  4.  delete 데이터 삭제하기  ###

 

bobby라는 이름을 가진 데이터를 삭제해보자.

db.users.delete_one({'name':'bobby'})

 

bobby 데이터가 삭제됨

 

delete_many 도 있지만 update와 마찬가지로 웬만하면 사용하지 않도록 하자.

 

 

댓글수0