가수면

Mongo DB 본문

React/라이브러리

Mongo DB

니비앙 2023. 6. 15. 21:35

이걸 내가 다시 만질 날이 올 줄이야...

기본 세팅

npm i mongodb

 

import { MongoClient, ServerApiVersion } from "mongodb";
const uri = process.env.MOGO_DB_URI ?? "";

const client = new MongoClient(uri, {
  serverApi: {
    version: ServerApiVersion.v1,	//  MongoDB 서버 API 버전
    strict: true,			// 엄격 모드
    deprecationErrors: true,		// 오래된 버전이면 에러 뱉을 건지
  },
});

데이터 베이스에 접근

export async function GET() {
  const mongo = await client.connect();
  const db = mongo.db("todos");
  const collection = db.collection("todo");
// ...
}

API

https://www.mongodb.com/docs/drivers/node/current/quick-reference/

 

Quick Reference — Node.js

Docs Home → Node.js This page shows the driver syntax for several MongoDB commands and links to their related reference and API documentation.CommandSyntaxawait coll.findOne({ title: 'Hamlet' });coll.find({ year: 2005 });await coll.insertOne({ title: 'Ja

www.mongodb.com

하나 찾기

await coll.findOne({ title: 'Hamlet' });

// { title: 'Hamlet', type: 'movie', ... }

여러 개 찾기

coll.find({ year: 2005 });

// [
//   { title: 'Christmas in Boston', year: 2005, ... },
//   { title: 'Chicken Little', year: 2005, ... },
//   ...
// ]

또는

coll.find({});

// 전부

한 개 삽입

await coll.insertOne({ title: 'Jackie Robinson' });

한 개 수정

await coll.updateOne(
  { title: 'Amadeus' },
  { $set: { 'imdb.rating': 9.5 } }
);

// { title: 'Amadeus', imdb: { rating: 9.5, ... } }

한 개 삭제

await coll.deleteOne({ title: 'Congo' });

여러 개 삭제

await coll.deleteMany({ title: { $regex: /^Shark.*/ } });

검색

// only searches fields with text indexes
coll.find({ $text: { $search: 'zissou' } });

// [
//   { title: 'The Life Aquatic with Steve Zissou', ... }
// ]

'React > 라이브러리' 카테고리의 다른 글

[Sanity] CRUD  (0) 2023.06.29
SWR  (0) 2023.06.20
NextAuth.js  (0) 2023.06.11
[Sanity] 기본 정리  (0) 2023.06.11
nodemailer  (0) 2023.06.11
Comments