1

当我对集合使用简单查询时说testdb查询看起来像 db.testdb.find()

我想知道db上面的查询是什么?

我知道它,但为什么我们总是需要db在我们在 mongodb 中使用的所有查询中使用?

我是初学者,想知道我们为什么要这样做?

谢谢,

津戈

4

4 回答 4

1

db是一个代表当前数据库的变量。如果您不想重复db.testdb对集合的每个查询,那么您可以存储db.testdb在单独的变量中:

> var testdb = db.testdb
> testdb.find()
> testdb.findOne()
于 2013-09-18T13:48:26.103 回答
1

db是一个 shell 变量,它指向当前选择的数据库 (d'oh!)。它包含数据库的常用操作,如帮助、集合、管理等。

您对此感到奇怪,可能是因为您尚未使用其他 shell 变量,但它们存在:

  • sh:当您处于分片环境中时。
  • rs:当您处于副本集场景中时。
  • it:评估的最后一行的结果,用于进一步迭代。

所以,基本上,dbvar 的存在是为了在 shell 中分离东西。如果您了解客户端 JavaScript - 请考虑对所有内容使用全局变量。这不好!这同样适用于 MongoDB shell。

于 2013-09-18T13:53:42.713 回答
0

db是对当前数据库的引用 是对当前数据库中
db.testdb的集合的引用testdb

于 2013-09-18T13:47:31.200 回答
0

db 是分配给当前 db 对象的变量。它已通过“使用 [dbname]”调用进行更改。它是一个有用的抽象,例如更容易的脚本/API 开发。您可以依靠使用 db 调用编写脚本,并允许另一段代码处理以确保它是正确的实例。

于 2013-09-18T13:47:44.803 回答