当前位置:  开发笔记 > 编程语言 > 正文

MongoDB脚本的基础知识 - 如何

如何解决《MongoDB脚本的基础知识-如何》经验,为你挑选了2个好方法。

MongoDB脚本的基础是什么?

我认为脚本将结束.js,我们使用它来运行它mongo try.js

但是,如果我把

print(db.foo.find())

try.js和使用mongo try.js

它会说

MongoDB shell version: 1.6.1
connecting to: test
DBQuery: test.foo -> undefined

如果我通过键入mongo和键入使用交互式shell

> db.foo.find()
{ "_id" : ObjectId("4c7a73428261000000003a7e"), "a" : 1 }
> print(db.foo.find())
DBQuery: test.foo -> undefined

{a : 1}是我之前插入的东西db.foo.insert({a:1})

做MongoDB脚本的正确方法是什么,以及如何像Ruby irb或Python 一样打印出来IDLE?谢谢.(Ruby puts a.inspect或者p a都可以打印出a通常的整个结构(所有的变量名和值a))

alert(db.foo.find())并且console.log(db.foo.find())也不会工作.



1> Niels van de..:

外部脚本文件在shell上下文之外执行.

db.foo.find()数据库命令只返回一个光标; 它本身不打印任何东西.从shell发出命令时,shell将迭代游标并打印结果.从外部脚本文件运行命令时,不会打印任何内容.

print()命令将打印出对象的字符串表示形式.在你的情况下,它是光标:

> print(db.foo.find())
DBQuery: test.foo -> undefined

如果需要打印查询结果,则必须在脚本文件中迭代光标并打印每个结果,类似于shell的作用:

function printResult (r) {
  print(tojson(r))
}

db.foo.find().forEach(printResult)



2> dtbarne..:

有一个用于打印json对象的内置函数.

只需附加.forEach(printjson)到函数调用的末尾.

db.foo.find().forEach(printjson);

推荐阅读
mobiledu2402851373
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有