CRUD 연산 (CRUD Operations)

CRUD 연산 (CRUD Operations)

CRUD 연산은 문서(document)를 생성(Create)·조회(Read)·수정(Update)·삭제(Delete) 하는 작업이에요. MongoDB에 저장된 데이터를 다루는 기본 단위죠.

드라이버의 메서드를 이용하면 다음 환경에 배포된 인스턴스에서 CRUD 연산을 수행할 수 있어요. 그리고 MongoDB Atlas에 배포된 환경에서는 UI에서도 직접 수행할 수 있죠.

Create 연산 (생성)

Create 연산은 컬렉션(collection)에 새 문서를 추가하는 작업이에요. insert 연산이라고도 하는데, 만약 컬렉션이 아직 없다면 이 연산이 컬렉션을 새로 만들어 줘요.

MongoDB에서 컬렉션에 문서를 삽입하는 메서드는 다음과 같아요.

  • db.collection.insertOne()
  • db.collection.insertMany()

insert 연산은 항상 단일 컬렉션을 대상으로 해요. 그리고 MongoDB의 모든 쓰기 연산은 **단일 문서 수준에서 원자적(atomic)**으로 수행되죠.

예시는 Create Documents 문서에서 확인할 수 있어요.

Read 연산 (조회)

Read 연산은 컬렉션에서 문서를 가져오는 작업, 즉 컬렉션에서 문서를 **조회(query)**하는 작업이에요. MongoDB에서 문서를 조회하는 메서드는 다음과 같아요.

  • db.collection.find()

이때 반환할 문서를 골라내는 **쿼리 필터(query filter)**나 조건을 지정할 수 있어요.

예시는 다음 문서에서 확인할 수 있어요.

  • Read Documents
  • Query on Embedded/Nested Documents
  • Query an Array
  • Query an Array of Embedded Documents

Update 연산 (수정)

Update 연산은 컬렉션에 있는 기존 문서를 수정하는 작업이에요. MongoDB에서 문서를 수정하는 메서드는 다음과 같아요.

  • db.collection.updateOne()
  • db.collection.updateMany()
  • db.collection.replaceOne()

update 연산도 단일 컬렉션을 대상으로 하며, 모든 쓰기 연산은 단일 문서 수준에서 원자적으로 수행돼요.

수정할 문서를 골라내는 **기준(criteria)**이나 필터를 지정할 수 있는데, 이 필터는 조회 연산과 동일한 문법을 사용해요.

예시는 Update Documents 문서에서 확인할 수 있어요.

Delete 연산 (삭제)

Delete 연산은 컬렉션에서 문서를 제거하는 작업이에요. MongoDB에서 문서를 삭제하는 메서드는 다음과 같아요.

  • db.collection.deleteOne()
  • db.collection.deleteMany()

delete 연산 역시 단일 컬렉션을 대상으로 하고, 모든 쓰기 연산은 단일 문서 수준에서 원자적으로 수행돼요.

제거할 문서를 골라내는 기준이나 필터를 지정할 수 있으며, 여기서도 조회 연산과 같은 문법을 써요.

예시는 Delete Documents 문서에서 확인할 수 있어요.

Bulk Write (대량 쓰기)

MongoDB는 쓰기 연산을 한꺼번에(대량으로) 수행하는 기능도 제공해요. 자세한 내용은 Bulk Write Operations 문서를 확인하세요.