2022. 12. 7. 11:32ㆍ웹개발 메모장
mongoDB 조작하는 방법
- 데이터 한개 저장하기
doc = {'name':'son','age':21}
db.users.insert_one(doc)
- 데이터 여러개 저장하기
db.users.insert_one({'name':'son','age':21})
db.users.insert_one({'name':'lee','age':27})
db.users.insert_one({'name':'tom','age':30})
위 방법 말고도 찾은 방법! (항해99 같은 팀 분이 공유해주신 방법ㅎㅎ)
db.users.insert_many([
{'name':'leo','age':20},
{'name':'hee','age':24},
{'name':'jany','age':18},
])
이 방법으로도 한꺼번에 가능하다
- 데이터의 모든 리스트 불러오기
위 코드는 mongoDB - users에 넣은 리스트를 뽑아보는건데,
뽑고 나면 아래처럼 _id 가 같이 나온다.
이것은 mongoDB가 데이터를 집어넣을때 자동으로 생성하는 것이라서
id를 지우고 print하면 된다.
all_users = list(db.users.find({},{'_id':False}))
for user in all_users:
print(user)
False 대소문자 주의!!
- 데이터 내용 업데이트 하기 set
db.users.update_one({'name':'son'},{'$set':{'age':19}})
users 에서 이름이 son이라는 사람의 나이를 19살로 바꿔라
- 데이터 내용 삭제 하기 delete
db.users.delete_one({'name':'son'})
오늘의 노력ㅎㅎ
👉 doc 안에 3개를 넣는 방법도 있나? 해서 구글링해서 나온 코드대로 입력해 본 결과
▶️ 이렇게 한꺼번에 들어가진다
👉 다음 방법으로 한번 더 도전
▶️결과는 bella 마지막껏만 저장이 됐다;;
이유는 모르겠다 😭
👉 insert()로 시도해 봤을 때
insert_many가 된다면 insert도 되지 않을까 해서 시도해봤는데 에러가 떴다.
TypeError: 'Collection' object is not callable. If you meant to call the 'insert' method on a 'Collection' object it is failing because no such method exists.
위 오류의 경우 insert()가 아닌 insert_one() 이나 insert_many()를 사용해야 한다고 한다.
그리고 mongodb와 파이썬의 버전차이로 인해 생기는 문제 일수도 있다고 한다.
'웹개발 메모장' 카테고리의 다른 글
WLT & 회원가입과 로그인 기능 & API (0) | 2022.12.12 |
---|---|
2회독 - 4주차 Flask 시작하기 (0) | 2022.12.07 |
2회독 - DB 데이터베이스란? & mongoDB 연결방법 (0) | 2022.12.06 |
2회독 - 3주차 웹스크래팅 & 크롤링 ( requests, bs4 ) (0) | 2022.12.06 |
2회독 - 3주차 파이썬 기초 공부 (2) | 2022.12.06 |