Mongodb Can';t从shell访问集合-语法错误:缺少;声明前(shell):1

Mongodb Can';t从shell访问集合-语法错误:缺少;声明前(shell):1,mongodb,Mongodb,我编写了一个脚本,使用mongoimport将csv文件加载到mongodb中。当我为两个类似的csv文件(相同类型)运行此命令时,它们都可以正常上载,但是我只能从mongodb shell访问其中一个。以下是mongodb shell会话的记录: > show collections 3mLgQAYJCq6_20110802 eTByWMY7zO6_20110802NonUniCode system.indexes > db.3mLgQAYJCq6_20110802 Thu Aug

我编写了一个脚本,使用mongoimport将csv文件加载到mongodb中。当我为两个类似的csv文件(相同类型)运行此命令时,它们都可以正常上载,但是我只能从mongodb shell访问其中一个。以下是mongodb shell会话的记录:

> show collections
3mLgQAYJCq6_20110802
eTByWMY7zO6_20110802NonUniCode
system.indexes
> db.3mLgQAYJCq6_20110802
Thu Aug 18 18:44:49 SyntaxError: missing ; before statement (shell):1
> db.eTByWMY7zO6_20110802NonUniCode
vh.eTByWMY7zO6_20110802NonUniCode

但是,我可以从python脚本和使用mongoexport访问这两个集合。我怀疑3mLgQAYJCq6_20110802文件有问题,但我不知道从哪里开始查找。有什么想法吗?

可爱的收藏名称。。。这可能是因为它以
3

开头。集合名称应以字母或下划线开头。您可以从下面的链接获取有关mongodb中集合命名约定的信息-

当我的收藏名称包含特殊字符时,这对我有效:

db["3mLgQAYJCq6_20110802"].findOne();

findOne()为我返回null,但其他方法效果很好。find()、drop()、remove()等。线索是db[“3mLgQAYJCq6_20110802”]+1这对我有用。我的收藏名称中有下划线和连字符。