MongoDB 脚本的基础知识是什么?
我认为剧本将以.js
,我们使用它来运行它mongo try.js
但如果我把
print(db.foo.find())
in try.js
并使用mongo try.js
它会说
MongoDB shell version: 1.6.1
connecting to: test
DBQuery: test.foo -> undefined
如果我通过输入使用交互式 shellmongo
并输入
> db.foo.find()
{ "_id" : ObjectId("4c7a73428261000000003a7e"), "a" : 1 }
> print(db.foo.find())
DBQuery: test.foo -> undefined
the {a : 1}
是我之前使用插入的db.foo.insert({a:1})
执行 MongoDB 脚本的正确方法是什么以及如何像 Ruby 一样打印出来irb
或Python的IDLE
?谢谢。 (鲁比的puts a.inspect
or p a
都可以打印出整个结构a
通常(所有变量名称和值a
))
alert(db.foo.find())
and console.log(db.foo.find())
也行不通。
外部脚本文件在 shell 上下文之外执行。
The db.foo.find()
数据库命令只返回一个游标;它不打印任何内容通过它自己。当从 shell 发出命令时,shell 将迭代光标并打印结果。当从外部脚本文件运行该命令时,不会打印任何内容。
The print()
命令将打印出对象的字符串表示形式。在你的情况下,它是光标:
> print(db.foo.find())
DBQuery: test.foo -> undefined
如果需要打印查询结果,则必须迭代脚本文件中的游标并打印每个结果,类似于 shell 的操作:
function printResult (r) {
print(tojson(r))
}
db.foo.find().forEach(printResult)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)