프로그래밍/DB
[mongoose] find에 대해서 알아보자
[mongoose] find에 대해서 알아보자
2021.12.08🎯 Model.find- 에 대해서 알아보자 find에 대해서 알아보고 갑시다! 📝 Model.find() Model.find(query, fields, options, callback) // find all documents await MyModel.find({}); // find all documents named john and at least 18 await MyModel.find({ name: 'john', age: { $gte: 18 } }).exec(); // executes, passing results to callback MyModel.find({ name: 'john', age: { $gte: 18 }}, function (err, docs) {}); // executes, name ..
[MongoDB] Express.js + Mongoose ODM 폴더 구조, 커넥션 이벤트
[MongoDB] Express.js + Mongoose ODM 폴더 구조, 커넥션 이벤트
2021.12.06🎯 Express.js + Mongoose ODM Express.js는 프로젝트 구조를 자유롭게 구성할 수 있기 때문에 어느 부분에 Mongoose ODM을 위치시키면 좋을지 적절한 위치를 결정하는 것이 중요하다. 일반적으로 models 디렉터리에 Schema와 Model을 같이 위치한다. app 객체는 애플리케이션 시작을 의미하는 부분이므로 해당 부분에 데이터베이스 연결을 명시하는 mongoose.connect를 위치해준다. 📝 Mongoose ODM 커넥션 이벤트 Express.js 애플리케이션은 종료되지 않고 동작하기 때문에 계속해서 데이터베이스가 정상적으로 동작하는지를 파악하기 위해 동작 중에 발생하는 데이터베이스 연결 관련 이벤트에 대한 처리를 하는 것이 좋다. 즉, DB가 살아있는지 파악하는 ..
[MongoDB] Mongoose ODM, Mongoose 사용하기, Query, populate
[MongoDB] Mongoose ODM, Mongoose 사용하기, Query, populate
2021.12.06🎯 Mongoose ODM Object Data Modeling MongoDB의 Collection에 집중하여 관리하도록 도와주는 패키지 Collection을 모델화하여, 관련 기능들을 쉽게 사용할 수 있도록 도와준다. 즉, 몽고디비의 컬렉션을 자바스크립트의 모델로 만들어 놓고 이 모델을 통해 몽고디비의 데이터에 접근하여 수정 및 삭제할 수 있게 도와주는 패키지이다. 📝 Mongoose ODM을 사용하는 이유 📕 연결 관리 MongoDB의 기본 Node.js 드라이버는 연결 상태를 관리하기 어렵다. Mongoose를 사용하면 간단하게 데이터베이스와의 연결 상태를 관리해준다. 📕 스키마 관리 스키마를 정의하지 않고 데이터를 사용할 수 있는 것은 NoSQL의 장점이지만, 데이터 형식을 미리 정의해야 코드 작..
[MongoDB] MongoDB 기본 개념, 설치, 사용 방법
[MongoDB] MongoDB 기본 개념, 설치, 사용 방법
2021.12.06🎯 MongoDB 대표적인 NoSQL, Document DB Mongo는 Humongous에서 따온 말로, 엄청나게 큰 DB라는 의미 → 대용량 데이터를 처리하기 좋다. 📝 RDB와 NoSQL 📕 RDB Relational Database 관계형 데이터베이스 자료들의 관계를 주요하게 다룬다. SQL 질의어를 사용하기 위해 데이터를 구조화해야 한다. 📕 NoSQL Non SQL 또는 Not Only SQL 구조화된 질의어를 사용하지 않는 데이터베이스 자료 간의 관계에 초점을 두지 않음 데이터를 구조화하지 않고, 유연하게 저장함 📕 NoSQL을 사용하는 이유 SQL을 사용하기 위해서는 데이터를 구조화라는 것이 필수 (DDL) → 스키마에 정의된 데이터가 아니면 저장할 수 없는 제약이 따른다. NoSQL을 사..