2012-10-18 170 views
1

我想列出在我的数据库下创建的所有集合。我知道查询mongodb集合

db.getCollectionNames();

但上市仅 - [ “system.indexes”, “system.users”]

我试图

秀收藏

它上市之后 - 系统。索引,system.users

它没有显示我我的收藏品。我怎样才能看到我所有的藏品?

+0

您可能位于错误的数据库中。在shell中运行'use dbname'以切换到名为''dbname''的数据库。 – JohnnyHK

回答

3

要使用mongo外壳看到所有的藏品在当前数据库:

  • db.getCollectionNames()返回当前数据库中的集合作为一个JavaScript阵列
  • show collections打印在当前数据库中集合为一个列表

如果您没有看到预期的集合,你可以查看当前的数据库:

db.getName() 

如果你想看到所有数据库中所有集合,这里的一些JavaScript代码应该做的伎俩:

db.adminCommand("listDatabases").databases.forEach(function (d) { 
    sdb = db.getSiblingDB(d.name); 
    print("Collections in database: "+d.name); 
    printjson(sdb.getCollectionNames()) 
    print("") 
}) 
+0

感谢您的回复Stennie –

0

我认为必须有一个以上的司机在那里。 我做

npm install mongodb 

安装驱动程序,我想我得到的驱动程序是一个记录在这里

http://mongodb.github.io/node-mongodb-native/2.0/api/

它没有getCollectionNames()或collectionNames(),但它确实有collections()