当前位置: 首页 > 知识库问答 >
问题:

无法从mongodb中删除集合

曹凯泽
2023-03-14

无法从外壳中删除集合,

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

但当我使用:

db._registration.drop()

它给了我一个错误:

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

共有3个答案

楚举
2023-03-14

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

江煜
2023-03-14

您还可以使用:

db["_registration"].drop()

哪种语法也适用于JS。

容飞掣
2023-03-14

问题不在于删除收藏。问题在于访问集合。所以您将无法从shell中更新、查找或使用它做任何事情。正如在mongodb JIRA中指出的,当一个集合包含像< code>_、< code>-或< code>这样的字符时,这是一个错误。

尽管如此,这种类型的集合名称是可以接受的,但它会在 shell 中引起问题。

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

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

或者这个

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

但我宁愿给它重新命名(当然如果可能的话,并且不会以大量改变而告终)。

 类似资料:
  • 在 MongoDB 中,可以使用 drop() 方法来从数据库中删除指定集合,它会从数据库中完全删除一个集合,并且不会留下与已删除集合关联的任何索引。 drop() 方法在使用时不需要带有任何参数,并且在使用参数调用时会产生错误,该方法的语法格式如下: db.collection_name.drop() 其中 collection_name 为要删除的集合名称,方法调用成功会返回 true,否则返

  • 本文向大家介绍如何从MongoDB集合中删除重复项,包括了如何从MongoDB集合中删除重复项的使用技巧和注意事项,需要的朋友参考一下 为此,设置“ unique:true ”,即唯一约束,并避免插入重复项,如以下语法所示: 为了理解上述语法,让我们创建一个包含文档的集合。在这里,不允许重复插入- 在find()方法的帮助下显示集合中的所有文档- 这将产生以下输出-

  • 问题内容: 我有两个表,tableA和tableB。 tableA具有列:tabAId,col2,col3 (tabAId primaryKey和Identity列。) tableB具有列:tabAId,名称 (tabAId不为空) 我在tableA的hbm文件中创建了Bag,以维护关系。 当我尝试更新 tableA中的 记录时,它将引发异常,因为我在tableA实例中有子项列表。 [NHiber

  • 本文向大家介绍MongoDB查询如何从集合中删除整个数组,包括了MongoDB查询如何从集合中删除整个数组的使用技巧和注意事项,需要的朋友参考一下 要从集合中删除整个数组,请在MongoDB中使用$unset。让我们创建一个包含文档的集合- 在find()方法的帮助下显示集合中的所有文档- 这将产生以下输出- 这是从集合中删除整个数组的查询- 在find()方法的帮助下显示集合中的所有文档- 这将

  • 我正在从db检索一个集合,想要删除它。这是密码。 这就是错误所在。 我也试着给所有的列名。

  • 我的服务器上安装了JDK 1.8.0_261和JDK 1.8.0_265。 当我从控制面板上卸载这两个JDK时,JDK 1.8.0_261的文件夹结构会自动从我的Java安装目录中删除,但对于JDK 1.8.0_265来说则是如此 我甚至重新启动了服务器,但仍然没有删除文件夹。我无法重新命名相同的名称。 目前我使用的是openJDK11,所有的注册表项 我怀疑某些服务仍在使用jdk8,我想从我的服