[MongoDB] Mongoose - 스키마 및 모델

Zero·2023년 3월 14일
0

MongoDB

목록 보기
7/14

Mongoose 스키마 및 모델 정의

Mongoose 에서는 스키마와 모델의 개념이 가장 중요한데, 스키마를 정의할 때 주로 데이터의 형식, 데이터의 타입등을 고려하며 작성한다.

  • 스키마는 문서에 어떤 값 또는 특성이 들어가는지 정의
    - 데이터베이스의 테이블, 컬렉션 타입 및 속성을 정의하는 문서의 형태 또는 구조
  • 모델은 위에서 만들었던 스키마를 통해 만드는 인스턴스
    - 작성된 스키마를 인스턴스화 하여 사용할 수 있게함
  • Collection
    - 관계형 데이터베이스 테이블과 동일
    - 여러 JSON 문서 보유 가능
  • Document
    - SQL의 레코드와 동일


스키마 작성 및 모델 활용 예시

const mongoose = require('mongoose');

const movieSchema = new mongoose.Schema({
	title : String,
  	year : Number,
    score : Number,
  	rating : String
})

const movie = mongoose.model('Movie', movieSchema);

mongoose.Schema를 활용하여 스키마 작성을 진행한다. title,year,score,rating은 각각 필드명을 뜻하며 필드명 내에는 속성(minlength & maxlength , required, default...etc)을 지정할 수 있다.

mongoose.model()을 통해 스키마를 인스턴스화 시켜 타 모듈에서 import 하여 사용할 수 있게끔 export 할 수 있다.

  • mongoose.model('모델 이름', 스키마)

0개의 댓글