在JavaScript数组中获取MongoDB数据库?

时间:2010-10-26 17:12:19

标签: mongodb

我知道在MongoDB终端中,我可以运行show dbs来查看可用的数据库。我想以编程方式列出数据库,以便我可以迭代它们并根据正则表达式删除一些数据库。

我尝试了db.runCommand("show dbs"),但没有返回结果进行迭代。

3 个答案:

答案 0 :(得分:17)

迭代MongoDB数据库名称:

> db.getMongo().getDBNames()
[
    "test",
    "admin",
    "local"
]
> db.getMongo().getDBNames
function () {
    return this.getDBs().databases.map(function (z) {return z.name;});
}

答案 1 :(得分:6)

基于这个答案http://groups.google.com/group/mongodb-user/browse_thread/thread/9b3568f3a3cf4271,我能够编写解决方案。

use admin
dbs = db.runCommand({listDatabases: 1})
dbNames = []
for (var i in dbs.databases) { dbNames.push(dbs.databases[i].name) }

希望这会帮助别人。

答案 2 :(得分:5)

下面将创建一个数据库名称数组:

var connection = new Mongo();
var dbNames = connection.getDBNames();