몽고 디비관련 정리
몽고 디비
몽고 DB 의 핵심은 정렬된 키와 연결된 값의 집합으로 이루어진 문서라는 점입니다. ----------------------------------------------------------------------------------- => {“greeting" : "Hello, Mongo!"} -----------------------------------------------------------------------------------
위 중괄호({})로 묶인 부분이 몽고 DB 에서의 가장 간단한 ‘문서’라는 개념입니다. 이 문서는 “greeting"이라는 하나의 키에 연결된 ”Hello, Mongo!"라는 값을 가지는 상황입니다. ◆ 하나의 문서 안에 2 개 이상의 키-값 쌍이 들어 갈 수도 있습니다. ----------------------------------------------------------------------------------- => {“greeting" : "Hello, Mongo!", "reacting" : "Thank you!"} ----------------------------------------------------------------------------------- (중요!) 문서의 키-값 쌍은 정렬되어 있습니다.
따라서 다음 두 문서는 다른 문서로 취급됩니다. ----------------------------------------------------------------------------------- =>
{“greeting" : "Hello, Mongo!", "reacting" : "Thank you!"}
!= {"reacting" : "Thank you!", “greeting" : "Hello, Mongo!"} ----------------------------------------------------------------------------------- ◆ 문서의 키는 문자열 형입니다. (몇 가지 규칙) ▪ 키는 \0(null 문자)을 포함하지 않습니다. 이 문자는 키의 끝을 나타내는데 쓰이기 때문입니다. ▪ ‘.’ 과 ‘$’ 문자는 몇 가지 특별한 속성을 가지고 있으며 특정 상황에서만 사용해야 합니다. 이 문자들은 보통 예약어로 취급해야 하며, 부적절하게 사용하는 경우 드라이버에서 경고가 발생하게 됩니다. ▪ 엄격하게 지켜지는 것은 아니지만 ‘_’로 시작하는 키는 예약어로 생각하는 편이 좋습니다
다음은 localhost에 있는 mongodb instance에 하나의 document(RDBMS로 치면 row)를 insert하는 클라이언트 프로그램 예제이다.
C:\data\db 를 만들어준뒤 C:\Program Files\MongoDB\Server\3.0\bin 가서 mongod 를 해준다
해준뒤 C:\Program Files\MongoDB\Server\3.0\bin mongo 를 해주면 실행된다
안되면 포트 번호를 열어 주거나 방화벽을 풀어주어야한다
use test 를 하면 자동으로 데이터베이스가 생성된다
db.createCollection('product's) --- 컬렉션 생성하는 부분
{ok :1 }
저장할때는
db.products.save( { name :' pencil ' , price : 500 }) -- 문서 만드는부분
컬렉션 내부의 데이터를 확인 할때는
db.products.find(){ "_id": ObjectId(" 구분하기위한 자동생성된 아이디 값") , "name" : "pencil" , "price" :500 }
db.products.find( {} , { _id:false}) 를 해주면 id 속성은 출력해주지 않는다 .
db.products.find ( {price :500} , { _id :false})
몽고 디비는 관계형데이터베이스와 달리
메모리 에서 쓰는디비 --- 실시간 에 강하다 대용량 무리
자바스크립트 안에서 구현 하는편
mongo db 계층 구조
데이터베이스
컬렉션 컬렉션 컬렉션
문서 문서 문서