NoSQL 실습(MongoDB)

YB·2023년 11월 19일

DB 공부

목록 보기
2/6

오늘은 대표적인 NoSQL 중 하나인 MongoDB를 설치하고 기본 실습을 해보고자 함.

MongoDB 설치

  • 다운로드를 눌렀더니 개인정보를 요구합니다. 필수 항목을 채우고 제출했습니다.
  • 회사 이름 쓰라고 돼 있는데, 진짜 회사 이름 쓰면 혹시 업무용으로 쓴다고 생각하고 비용 청구할까봐 Home 이라고 적었습니다. 그냥 연습해보는 용도니까요.
  • 설치할 때는 설정 바꾼 것 없고 next만 누르다가, Compass 설치할건지 체크하는 것만 해제했습니다. 저는 studio 3T로 실습 진행해보려고 합니다.

Studio 3T 설치

  • 다운로드: https://studio3t.com/ko/download/

  • 여기서 다운로드 받은 후 다음다음 눌러서 설치 완료

  • 공짜버전이 있고 Ultimate 버전이 있었다. 나는 공짜버전만 쓸 예정. 어쨌든 계정은 만들어야 한다.

  • 가입까지 다 하고나니 켜졌다. 근데 Full Product Trial이다. 30일간 유료버전 체험하게 해준다. 공짜버전만 쓰고싶었는데 어쩔 수 없다.

  • Add new connections 눌렀더니 URI 넣는 거랑 직접 설정하는거 있어서 직접 선택하기 눌렀더니 이런 창이 나온다. Name 적당히 써주고 Server에다가 localhost 썼다. 포트는 내가 쓴거 아니고 원래 써있었다. MongoDB 기본 포트인가보다.

  • 그렇게 하고 또 다음 다음 눌렀더니 SQL Developer랑 비슷한 화면이 나왔다.


DB 만들고 Collection 생성 해보기

  • 참고한 페이지에서는 Use를 사용해서 DB를 생성하고 "db" 명령어로 DB 조회 하고 "db.createCollection()" 으로 Collection 을 만드는 것 같은데 저 명령어들은 까만 화면에서 치는 것 같고, 나는 studio 3T 깔았으니까 UI에서 찾아보았다.
  • 저거 Add Database 눌러서 추가하고 또 우클릭해서 Collection 까지 만들었더니 만들어졌다.
    성☆공

기초 쿼리 실행해보기

db.testCollection01.insert({a:3, b:5})

  • 1개 Field가 추가되었다고 나온다.
db.testCollection01.find();

  • 모든 데이터를 조회할 수 있다. 위의 Insert문을 2번 썼더니 이렇게 2 줄이 나왔다.
db.testCollection01.insertMany([  
{ item: "journal", qty: 25, size: { h: 14, w: 21, uom: "cm" }, status: "A" },
{ item: "notebook", qty: 50, size: { h: 8.5, w: 11, uom: "in" }, status: "A" },
{ item: "paper", qty: 100, size: { h: 8.5, w: 11, uom: "in" }, status: "D" },
{ item: "planner", qty: 75, size: { h: 22.85, w: 30, uom: "cm" }, status: "D" },
{ item: "postcard", qty: 45, size: { h: 10, w: 15.25, uom: "cm" }, status: "A" }])

  • 한번에 여러 데이터를 넣을 땐 InsertMany로 넣을 수 있다.
  • 이전에 없던 속성을 넣었더니 이렇게 없는 값은 비어서 나온다.
db.testCollection01.find({name:/note/})

  • find() 안에 조건을 {}를 넣고 조건을 넣으면 조건에 맞는 데이터를 조회할 수 있다.

참고:
https://velog.io/@hahaha/MongoDB-%EA%B8%B0%EC%B4%88-%EC%8B%A4%EC%8A%B5 ([MongoDB] 기초 실습)
https://xn--os5ba3q.com/24 (mongoDB 쿼리의 모든 것!)

profile
뭐라도 만들어본다

0개의 댓글