作者:iloveyoumuch18 | 来源:互联网 | 2014-05-28 16:53
MongoDBshell是MongoDB自带的一个javascriptshell,通过它,我们可以与MongoDB实例交互。包括执行管理操作,检查运行实例,或其他操作。1.启动MongoDBshell启动shell的方法很简单,将我们从http://www.mongodb.org/downloads#32-bit-li
MongoDB shell是MongoDB自带的一个Javascript
shell,通过它,我们可以与MongoDB实例交互。包括执行管理操作, 检查运行实例,或其他操作。
1. 启动MongoDB shell
启动shell的方法很简单,将我们从http://www.
mongodb.org/downloads#32-bit-limit这里下载的文件加压出来后,
放在如下位置:
F:\Development\DataBase\NoSQL\mongodb
运行如下命令,我们就启动shell了:

开启后,默认连接到test数据库,并将这个变量赋值给全局变量db,test这个也是安装mongodb是自带的一个数据库实例,我们可以通过
use database_name
来切换数据库
2. shell中的CRUD操作
2.1 创建
shell 命令:insert
示例:

在这个例子中,我们首先定义一个post对象,包含三个key,然后通过调用db.blog.insert()命令将post文档插入到blog这个集合中。
如果当前db中没有blog这个集合,那么将创建一个。插入完之后,我们再调用db.blog.find()命令获取blog集合里面的文档。
获取的时候,我们会发现,除了我们插入的三个key外,还有一个_id key,这个我们在数据类型里面会介绍。
2.2 读取
shell命令:find和findOne
在上一段里,我们已经通过db.blog.find()获取blog这个集合里的文档了。
同样我们也可以调用db.blog.findOne(),它只会返回一个文档。
find和findOne都可以加入条件,在后面的系列,我们会详解他们。
2.3 更新
shell命令:update
示例:

在这个例子中,我们先查看刚才定义的post对象,然后给post添加一个属性comment,并对其赋值
然后调用db.blog.update()命令更新刚才我们插入的post文档。
调用update的时候,我们至少需要2个参数,第一个是要更新的文档的限定条件,第二个是新的文档。
2.4 删除
shell命令:remove
示例:

通过给remove指定条件,删除对应的文档。如果没有指定条件,将删除整个集合的文档,但是集合还是存在。
3. shell的帮助命令
3.1 MongoDB的帮助
进入MongoDB后直接输入help,将列出所有的帮助命令

如果我们在help前面加上对象,那么列举出来的就是指定对象的帮助命令,如db.help(),db.blog.help()等
3.2 查看命令的源代码
有个小技巧,如果我们调用方法的时候,不加小括号,那么打印出来的就是该方法的实现,如db.blog.insert: