type
Post
status
Published
t-status
complete
date
Apr 30, 2019
slug
summary
간단한 예제 모음
tags
MongoDB
main-category
DB
category
NOSQL
icon
password
MongoDB?
NoSQL DBMS 의 한 종류이며 Document 지향 데이터 베이스 입니다.
전통적인 관계형 데이터베이스와 다른 구조를 가지고 있습니다.
현재 백엔드에서 가장 인기있고 많이 채택되고있는 NoSQL DBMS입니다.
사용환경
CentOS
MongoDB : Version 3.4.15
몽고DB가 설치되어있는 환경이라고 생각하고 작성합니다. 설치법은 추후에 작성하겠습니다.
1. Db 생성
- use test
use 라는 명령어로 db를 생성시킵니다.
- db
db 라는 명령어로 현재 자신의 db를 알수있습니다.
- show dbs
전체 db를 볼 수 있습니다.
2. Collection(Table)
SQL문을 사용하는 DB에서는 보통 Table을 생성하는데
MongoDb는 Collection이라는 명칭을 씁니다.
- show tables
해당 DB의 table을 볼 수 있습니다.
- Collection 생성
use test //사용하고자 하는 Db선택
db.createCollection('test_collection') //test_collection 이라는 collection 생성
createCollection에는 여러 옵션이 있지만 생략하겠습니다.
- Collection 삭제
use test //사용하고자 하는 Db선택
db.getCollection('test_collection').drop() //test_collection 이라는 collection 삭제
3. CURD (Create,Update,Read,Delete)
- Create (데이터 삽입)
use test // 사용하고자 하는 Db선택
db.getCollection('test_collection').insert({_id:'test1','age':NumberLong(10)}) //데이터 삽입
보통의 경우 테이블안에 들어갈 데이터의 collum, type, privateKey 를 미리 지정하고 테이블을 생성하게됩니다.
MongoDb의 경우에는 privateKey의 경우 _id 라는 collum명을 사용하고 Insert 시에 type을 지정해주거나 합니다.
- Update( 데이터 수정)
use test
db.getCollection('test_collection').update({_id:'test1'},{$set:{'age':NumberLong(15)}})
첫번 째 중괄호에는 filter(조건) 이 들어갑니다.
두번 째 중괄호에는 여러 옵션과 합께 수정할 데이터를 넣습니다.
- Read(조회)
use test
db.getCollection('test_collection').find({})

find괄호안의 중괄호에는 filter(조건) 이 들어갑니다.
- Delete(삭제)
use test
db.getCollection('test_collection').delete({_id:'test1'})
delete괄호안의 중괄호에는 filter(조건) 이 들어갑니다. 위의 조건대로하면 _id가 test1인 것을 삭제한다 라는 의미가 되겠네요.
정말 간단한 DB조작법을 적어봤습니다.