본문 바로가기

개발 일지/Node.js

Node.js [4/50]일

데이터를 DB에 저장 (Mongo DB)

DB(Database) 는 무엇이냐

데이터를 일정한 형식으로 저장할 수 있게 도와주는 곳이다. 

우리가 가장 쉽게 접할 수 있었던건 MS엑셀 이다.

그러나 엑셀은 10만단위가 넘어가면 버벅거린다.

 

대표적인 관계형 데이터베이스는 RDBMS 는

  • MySQL
  • MariaDB
  • Oracle
  • MS SQL Server 

가 있지만  프론트엔드 개발자를 꿈꾸는 나에게는 

SQL을 제대로 배워서 사용할 시간이 부족하다... 

 

그래서 내가 사용할것은 Object 자료형으로 입출력이 가능한

NoSQL 이다. 

 

특히 가장 유명한

MongoDB 를 사용할 것임

 

MongoDB

 MongoDB 는 무료로 512메가 바이트를 제공한다. 

https://account.mongodb.com/account/login?n=%2Fv2%2F635507e49a708801a936092c&nextHash=%23metrics%2FreplicaSet%2F6355081f16add45a1183a1a1%2Fexplorer%2Fdbsparta%2Fusers%2Ffind

 

Cloud: MongoDB Cloud

 

account.mongodb.com

 

1. 가입하고 

2. 무료티어 선택하고

3. 서버위치 선택 하면 Cluster가 생성됨

4. Database Access 메뉴에서 DB접속용 아이디/비번 생성

5. Netword Access 에서 IP추가

6. DB 커넥트

 

Connent your application 클릭

 

요고 코드 복사해서 잠시 키핑 하고 다시 에디터로 돌아감

 

1. 몽고DB 라이브러리 설치

npm i mongodb

 

이런식으로 코드 입력하는데 <password> 에 비밀번호 입력하면됨.

이러면 커넥트 끝

잘나오는지 확인하려면 

 

이런식으로 넣어보면됨 커넥트 완료되면 8080 띄워라 

 

MongoDB 에서 에러처리 하려면

위 코드에다가

if (error) return console.log(error);

이런거 한줄 추가해주면됨 

 

 

Cluster 에서 collect 생성

Browse Collections 들어가면

Database 와 Collection 생성이 가능하다. 

 

 

todo 라는 db에  post 라는 collection을 생성하였다. 

 

이 collection에 데이터를 저장하려면

    const db = client.db("todo");

    db.collection('post').insertOne("저장할데이터",(error,result)=>{
      console.log("저장완료");
    });

이런식으로 코딩 하면됨

 

근데 이 저장할 데이터는 

object 형식으로 저장을 해줘야한다. 

 

 db.collection("post").insertOne(
      { name: "park", age: 33 },
      (error, result) => {
        console.log("저장완료");
      }
    );

이런식으로  넣으니

 

 

데이터가 잘 저장됬다 !
여기서 몽고DB 의 장점 

스키마를 알아서 만들어줌 

_Id 는 내가 따로 부여하지 않으면 알아서 자동으로 들어감 

 

 

'개발 일지 > Node.js' 카테고리의 다른 글

Node.js [3/50]일  (0) 2023.01.20
Node.js [2/50]일  (1) 2023.01.18
Node.js [1/50]일  (0) 2023.01.17
Node.js 입문 [0/50]일  (0) 2023.01.17