gpt4 book ai didi

mongodb - 无法在名称中包含两个破折号的 mongodb 中删除集合

转载 作者:可可西里 更新时间:2023-11-01 09:57:05 25 4
gpt4 key购买 nike

我有一个使用 mongoimport 工具从文件创建的集合。问题是我的命令有错字。现在我最终得到了一个包含两个破折号的集合。mycollection--file(不要忘记破折号前的空格)现在 mongodb 不会让我删除集合。 db.mycollection--file.drop() 会得到 SyntaxError: Unexpected Identifier。它不仅是 drop,而且 find 或无论如何与集合交互都会出现语法错误。但如果您显示集合,它确实会列在数据库中。

最佳答案

我相信这对你有用:

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

关于mongodb - 无法在名称中包含两个破折号的 mongodb 中删除集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25041167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com