MongoDB Truncate 컬렉션
컬렉션
은 모든 문서가 있는 폴더에 지나지 않습니다. 제한 컬렉션을 사용할 때 컬렉션에 추가할 수 있는 레코드 수에는 제한이 있습니다.
문서의 최대 크기는 16MB
입니다. 경우에 따라 새 컬렉션
을 만들고 현재 컬렉션에서 문서를 제거하고자 할 수 있습니다.
필요에 따라 아래 컬렉션
을 자르기 위해 두 가지 선택 사항 중 하나를 선택할 수 있습니다. 오늘의 기사에서는 MongoDB에서 컬렉션
을 자르는 방법을 배웁니다.
MongoDB에서 컬렉션
자르기
프로젝트 요구 사항에 따라 drop()
또는 remove()
를 사용할 수 있습니다. remove()
는 일치하는 문서를 삭제하고 인덱스를 보존(업데이트)하는 반면 컬렉션
의 모든 데이터 및 인덱스를 삭제하려는 경우 drop()
을 사용할 수 있습니다.
아래의 drop()
메서드부터 시작하겠습니다.
drop()
메서드 사용
MongoDB에서는 drop()
메서드를 사용하여 데이터베이스에서 컬렉션
을 제거할 수 있습니다. 컬렉션
이 데이터베이스에서 삭제되고 덤프된 컬렉션에 연결된 모든 인덱스도 삭제됩니다.
db.collection.drop()
메서드는 인수와 함께 사용할 때 오류를 발생시키고 인수를 허용하지 않습니다. drop 명령이 컬렉션
을 성공적으로 삭제하면 true
를 반환합니다.
드롭할 collection
이 없으면 false
를 반환합니다. drop()
메소드에 대한 자세한 정보는 여기에서 찾을 수 있습니다.
통사론:
> db.collectionName.drop()
다음 예를 사용하여 언급된 아이디어를 이해해 보겠습니다.
> db.users.drop()
이전 샘플에서 모든 user
컬렉션을 삭제하고 있으며, 그러면 관련 인덱스도 자동으로 제거됩니다. MongoDB와 호환되는 MongoShell
에서 위의 코드 줄을 실행합니다.
다음과 같은 결과가 표시됩니다.
true
remove()
메서드 사용
MongoDB에서는 remove()
메서드를 사용하여 데이터베이스에서 컬렉션
을 제거할 수 있습니다.
그러나 이 방법은 oplog
에 단일 collection
삭제 명령 대신 제거된 각 문서에 대한 항목이 포함되기 때문에 복제 세트 시나리오에서 상당히 느립니다
.
remove()
메서드는 capped
컬렉션과 호환되지 않습니다. remove()
메서드는 시계열 ‘컬렉션’에 적용되지 않습니다. 필요에 따라 효과적인 접근 방식을 선택하십시오.
remove()
가 collection
을 성공적으로 삭제하면 작업 상태를 포함하는 WriteResult
객체를 반환합니다. remove()
여기에 대한 자세한 정보를 찾을 수 있습니다.
통사론:
> db.collectionName.remove({})
다음 예를 사용하여 언급된 아이디어를 이해해 보겠습니다.
> db.users.remove({})
전체 사용자
컬렉션 데이터는 위의 샘플에서 삭제되지만 이 메서드는 컬렉션에 연결된 인덱스를 제거하지 않습니다. MongoDB와 호환되는 MongoShell
에서 위의 코드 줄을 실행합니다. 다음과 같은 결과가 표시됩니다.
WriteResult({ "nRemoved" : 3300 })
Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.
LinkedIn