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

MongoDB集合连字符名称

况承福
2023-03-14

我正在使用Node.js程序将数据插入MongoDB数据库。我已将数据插入到名为“repl-failOver”的集合中。

var mongoClient = require("mongodb").MongoClient;
mongoClient.connect("mongodb://localhost:30002/test", function(err, db) {
    if (err) throw err;
    db.collection("repl-failOver").insert( { "documentNumber" : document++}, function (err, doc) {
        if (err) throw err;
        console.log(doc);
    });
    db.close();
});

当我使用Mongo shell并使用< code>show collections列出数据库中的集合时,我能够看到集合“repl-failOver”。

如何从mongoshell为这个集合运行查找命令?

共有2个答案

邵兴怀
2023-03-14

您在访问具有特定字符 (-_) 的集合时收到此错误。我在这里解释了解决方法,但基本上您需要做的就是

< code > db . get collection(" repl-failOver ")。插入(...)

阴礼骞
2023-03-14

使用此语法:

db['repl-failOver'].find({})

或者

db.getCollection('repl-failOver').find({})

您可以在手册的执行查询部分找到更多信息:

如果mongoshell不接受集合的名称,例如,如果名称包含空格、连字符或以数字开头,则可以使用替代语法来引用集合,如下所示:

db["3test"].find()

db.getCollection("3test").find()
 类似资料:
  • 我知道一般来说,我们需要做类似的事情才能在Spring data中从mongoDB获取文档: 定义一个类并用@Document:注释它 MongoOps.findById(p.getId(), Person.class); 问题是在运行时我不知道文档的类类型,我只有它的字符串集合名称和它的字符串ID。如何使用SpringData检索文档?类似于这样: 结果对象类型并不重要,它甚至可以是一个对象,我

  • 我正在尝试重命名/删除一个 Mongo 集合,我无意中放了一个 .(点) 在数据库集合名称的末尾,因此集合名称如下所示: 收藏品名称。 我无法找到一种方法来使用包含点号的集合名称来删除或重命名集合,而不会返回错误。 任何建议这是否是可能的。

  • 我有这样的URI: 我需要一个包含解析元素的集合: 确切地说,我需要C#/.NET方法的Java等价物。

  • 本文向大家介绍如何在MongoDB中重命名集合?,包括了如何在MongoDB中重命名集合?的使用技巧和注意事项,需要的朋友参考一下 要在MongoDB中重命名集合,可以使用方法。语法如下- 为了理解上述语法,让我们列出数据库样本中的所有集合。查询如下- 以下是输出- 现在,将集合名称“ informationAboutDelete”更改为“ deleteSomeInformation”。查询如下以

  • 主要内容:创建固定集合,固定集合查询固定集合是具有固定大小的循环集合,遵循插入顺序,以支持高性能的创建、读取和删除操作。通过循环,当分配给集合的固定大小用完时,它将删除集合中最旧的文档,而不提供任何显式命令。 如果更新导致文档大小增加,则固定集合会限制对文档的更新。由于固定集合是按磁盘存储的顺序存储文档的,因此可以确保文档大小不会增加磁盘上分配的大小。固定集合最适合存储日志信息、缓存数据或任何其他高容量数据。 创建固定集合 要创建一

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