작성
·
267
2
db.employees.deleteMany( { age: { $lt: 30 } }) 썼는데
삭제가 안되고 에러창이 뜹니다...왜 그럴까요...?
다른 명령어는 됩니다...find나 insert나..
답변 2
3
안녕하세요. 아마도 collection을 capped:True 로 해서 생성이 되었나봐요.
(아마도 이런 옵션이 있다고 말씀드린 부분인데, 테스트해보시면서 그 옵션으로 collection을 만드신듯해요, 전체 collection들은 capped로 만드시지 않고 진행되도록 되어 있어서, 해당 collection도 drop() 으로 삭제하신 후, 새로 만드시면 좋을 것 같습니다.)
capped: True 이면 개별 document는 삭제가 안됩니다. (사실 이 부분은 저도 capped 옵션으로는 로그만 만들어놔서 삭제할 일이 없어서 잘 몰랐네요)
다음 공식 문서와 stackoverflow 참고도 하시면 좋을 것 같습니다. 감사합니다.~~~
https://stackoverflow.com/questions/33048282/how-to-remove-a-document-from-the-capped-collection
https://docs.mongodb.com/manual/core/capped-collections/
You cannot delete documents from a capped collection. To remove all documents from a collection, use the drop()
method to drop the collection and recreate the capped collection.
0