22

无法从 shell 中删除集合,

集合可用并且我的 php 脚本正在访问它(选择|更新)

但是当我使用时:

db._registration.drop()

它给了我一个错误:

Date, JS Error: TypeErrorL db._registration has no properties (shell): 1
4

3 回答 3

52

问题不在于删除集合。问题在于访问集合。因此,您将无法从 shell 更新、查找或使用它进行任何操作。正如在mongodb JIRA_中指出的那样,当集合中包含,-或之类的字符时,这是一个错误

尽管如此,这种类型的集合名称是可以接受的,但它会导致 shell 出现问题。

您可以使用以下命令在 shell 中删除它:

db.getCollection("_registration").drop()

或这个

db['my-collection'].drop()

但我宁愿重命名它(当然,如果可能并且不会有很多变化)。

于 2012-12-01T17:48:53.067 回答
0

您还可以使用:

db["_registration"].drop()

哪种语法也适用于 JS。

于 2018-09-07T16:33:24.633 回答
-1

由于某种原因,双引号“_registration”对我不起作用..但单引号“_registration”有效

于 2014-08-28T23:57:30.257 回答