使用Mongo集合中的特殊字符

时间:2012-03-05 16:11:52

标签: mongodb

我有一个我无法丢弃的集合,我假设其名称中的“ - ”是一个特殊字符。在MongoDB中,逃避特殊字符的最佳方法是什么?

> db.tweets.drop();
true

BUT

> db.tweets-old.drop();
ReferenceError: old is not defined (shell):1

我试图用引号(单引号和双引号)和斜杠来逃避,但没有任何作用。

2 个答案:

答案 0 :(得分:60)

以下作品:

db["tweets-old"].drop();

它被称为square bracket notation,它允许您在属性名称中使用特殊字符。

答案 1 :(得分:6)

所以:

db.getCollection("tweets-old").drop()

现在已经有一段时间了。

此外,方法调用还模仿了通用"获取集合"所有官方支持的MongoDB驱动程序中的访问器方法。所以这里的建议是你已经习惯了这种方式使用它,因为"命名集合"访问器是一般的完成方式。