티스토리 뷰

항해

3주차_12(pymongo로 db조작하기)

타올이 2021. 12. 11. 15:49
반응형

pymongo 라이브러리의 역할

예를 들어, MS Excel를 파이썬으로 조작하려면,

특별한 라이브러리가 필요하지 않겠어요?

 

마찬가지로, mongoDB 라는 프로그램을 조작하려면,

특별한 라이브러리, pymongo가 필요하답니다!

 

패키지 설치하기

pymongo

 

[코드스니펫] pymongo 기본 코드

from pymongo import MongoClient

client = MongoClient('localhost', 27017)

db = client.dbsparta

 

# 코딩 시작

DB연결하기 & 데이터 넣기

[코드스니펫] pymongo(insert)

doc = {'name':'bobby','age':21}

db.users.insert_one(doc)


from pymongo import MongoClient                   # pymongo를 임포트 하기(패키지 인스톨 먼저 해야겠죠?)

client = MongoClient('localhost', 27017)              # mongoDB는 27017 포트로 돌아갑니다.

db = client.dbsparta                                       # 'dbsparta'라는 이름의 db를 만듭니다.

 

# MongoDB에 insert 하기

 

# 'users'라는 collection에 {'name':'bobby','age':21}를 넣습니다.

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

db.users.insert_one({'name':'kay','age':27})

db.users.insert_one({'name':'john','age':30})

모든 결과 값을 보기

[코드스니펫] pymongo(find)

from pymongo import MongoClient                # pymongo를 임포트 하기(패키지 인스톨 먼저 해야겠죠?)

client = MongoClient('localhost', 27017)           # mongoDB는 27017 포트로 돌아갑니다.

db = client.dbsparta                                    # 'dbsparta'라는 이름의 db를 만듭니다.

 

# MongoDB에서 데이터 모두 보기

all_users = list(db.users.find({}))

 

# 참고) MongoDB에서 특정 조건의 데이터 모두 보기

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

 

print(all_users[0])                                       # 0번째 결과값을 보기

print(all_users[0]['name'])                             # 0번째 결과값의 'name'을 보기

 

for user in all_users:                                   # 반복문을 돌며 모든 결과값을 보기

         print(user)

특정 결과 값을 뽑아 보기

[코드스니펫] pymongo(find_one)

user = db.users.find_one({'name':'bobby'})

print(user)

수정하기

[코드스니펫] pymongo(update_one)

# 생김새

db.people.update_many(찾을조건,{ '$set': 어떻게바꿀지 })

 

# 예시 - 오타가 많으니 이 줄을 복사해서 씁시다!

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

 

user = db.users.find_one({'name':'bobby'})

print(user)

삭제하기 (거의 안 씀)

[코드스니펫] pymongo(delete_one)

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

 

user = db.users.find_one({'name':'bobby'})

print(user)

pymongo 사용법. 코드요약

[코드스니펫] pymongo 코드 요약

우리는 딱 네 가지 기능만 알면 됩니다. 저장하고, 찾고, 바꾸고, 지우고!

이 기능들을 어떻게 사용하는지 요약하면 다음과 같습니다.

 

# 저장 - 예시

doc = {'name':'bobby','age':21}

db.users.insert_one(doc)

 

# 한 개 찾기 - 예시

user = db.users.find_one({'name':'bobby'})

 

# 여러개 찾기 - 예시 ( _id 값은 제외하고 출력)

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

 

# 바꾸기 - 예시

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

 

# 지우기 - 예시

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

반응형

'항해' 카테고리의 다른 글

3주차_14(웹스크래핑 결과 저장하기)  (0) 2021.12.11
3주차_13(pymongo로 db조작하기-수업)  (0) 2021.12.11
3주차_11(DB개괄)  (0) 2021.12.10
3주차_10(DB설치 확인)  (0) 2021.12.10
3주차_9(웹스크래핑(크롤링) 연습)  (0) 2021.12.10
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
링크
글 보관함