Подтвердить что ты не робот

Remove требует запроса в src/mongo/shell/collection.js

Получение этой ошибки при запуске db.messages.remove(). "remove требует запроса в src/mongo/shell/collection.js". любые предложения по устранению этой ошибки?

4b9b3361

Ответ 1

Как говорится в сообщении, вам нужно предоставить запрос, но он может быть пустым (если вы хотите удалить все документы):

db.messages.remove({})

EDIT: Я хотел бы подчеркнуть комментарий, сделанный Stennie:

Примечание. Если вы действительно хотите удалить все документы в коллекции, быстрее выполнить collection.drop(). Операция remove() удалит документы по отдельности и обновит индексы при удалении документов; a drop() немедленно удалит все документы и индексы для коллекции.

Ответ 2

Если вы пытаетесь удалить коллекцию messages, вам необходимо выполнить db.messages.drop().

В противном случае команда db.messages.remove() используется для удаления определенного документа, и поэтому вам нужно написать запрос, чтобы механизм MongoDB мог узнать, от какого документа нужно избавиться. Напр. db.messages.remove({_ id:}).

Отсутствие {_id:} вызывает ошибку remove needs a query....

Ответ 3

Run:

db.collectionname.remove({});

результат:

WriteResult({ "nRemoved" : 7 })