当我对集合使用简单查询时说testdb
查询看起来像 db.testdb.find()
我想知道db
上面的查询是什么?
我知道它,但为什么我们总是需要db
在我们在 mongodb 中使用的所有查询中使用?
我是初学者,想知道我们为什么要这样做?
谢谢,
津戈
当我对集合使用简单查询时说testdb
查询看起来像 db.testdb.find()
我想知道db
上面的查询是什么?
我知道它,但为什么我们总是需要db
在我们在 mongodb 中使用的所有查询中使用?
我是初学者,想知道我们为什么要这样做?
谢谢,
津戈
db
是一个代表当前数据库的变量。如果您不想重复db.testdb
对集合的每个查询,那么您可以存储db.testdb
在单独的变量中:
> var testdb = db.testdb
> testdb.find()
> testdb.findOne()
db
是一个 shell 变量,它指向当前选择的数据库 (d'oh!)。它包含数据库的常用操作,如帮助、集合、管理等。
您对此感到奇怪,可能是因为您尚未使用其他 shell 变量,但它们存在:
sh
:当您处于分片环境中时。rs
:当您处于副本集场景中时。it
:评估的最后一行的结果,用于进一步迭代。所以,基本上,db
var 的存在是为了在 shell 中分离东西。如果您了解客户端 JavaScript - 请考虑对所有内容使用全局变量。这不好!这同样适用于 MongoDB shell。
db
是对当前数据库的引用 是对当前数据库中
db.testdb
的集合的引用testdb
db 是分配给当前 db 对象的变量。它已通过“使用 [dbname]”调用进行更改。它是一个有用的抽象,例如更容易的脚本/API 开发。您可以依靠使用 db 调用编写脚本,并允许另一段代码处理以确保它是正确的实例。