我有一个我使用文件中的mongoimport工具创建的集合。问题是我的命令中有一个拼写错误。现在我结束了一个有两个破折号的集合。 mycollection - 文件(不要忘记破折号前的空格)现在mongodb不会让我放弃收藏。 db.mycollection - file.drop()它将获得SyntaxError:Unexpected Identifier。 它不仅仅是drop但是找到或者无论如何与集合交互都会得到语法错误。但如果你确实显示了集合,它确实会在数据库中列出。
答案 0 :(得分:7)
我相信这对你有用:
db["mycollection--file"].drop()
带引号语法的方括号对于名称中包含干扰普通shell命令的字符的集合名称非常有用。
更新:
我已经在我自己的mongodb数据库中添加,查询并删除了此集合名称:
var x = {first:1}
db["mycollection--file"].save(x)
WriteResult({
"nMatched" : 0,
"nUpserted" : 1,
"nModified" : 0,
"_id" : ObjectId("53d96289aa812bcf293121df")
})
db["mycollection--file"].find()
{ "_id" : ObjectId("53d96289aa812bcf293121df"), "first" : 1 }
db["mycollection--file"].drop()
true