MongoDB shell 介绍
MongoDB shell 介绍
MongoDB自带javascript shell, 可在shell中使用命令行与MongoDB实列交互。shell可以执行管理操作,检查运行实列等等操作。
一:如何运行shell?
在命令行中,运行mongo, 就可以启动shell,如下命令:

注意:启动时,shell将自动连接MongoDB服务器,必须确保mongod已经启动。
shell是一个功能完备的javascript解析器,可以运行任意的javascript程序。我们请看如下几个简单的demo。

它还可以定义和调用Javascript函数,如下代码命令:

二:MongoDB客户端
运行命令 mongo后,shell会连到 MongoDB服务器的test数据库,并将数据库的链接赋值给全局变量db。
注意:db这个变量是通过shell访问MongoDB的主要入口点。
如果现在我们想要查看db当前指向那个数据库,可以使用db命令,如下所示:

shell还包含一些非Javascript语法的扩展,比如选择数据库操作这些~ 如下代码:

如果现在查看db变量,会发现其正指向foobar数据库,如下命令:

如上,通过db变量,可以访问其中的集合,比如,通过db.foobar 可返回当前数据库的foobar集合。这意味着,几乎所有的数据库操作都可以通过shell完成。
三:shell中创建,读取,更新,删除操作。
3.1 创建 insert
insert函数可以将一个文档添加到集合中,比如博客的列子,我们创建一个叫post的局部变量,用于表示我们的文档,它会有几个key,分别为 title, content,
和 date(发布日期),如下:

如上,我们使用insert方法将其保存到blog集合中,然后我们调用集合的find方法来查询数据,可以看到数据被查询出来了。我们再来看看如下:

db是指向foobar, db.blog 就是指向了 foobar.blog了;
3.2 读取find和findOne
find和findOne方法可以用于查询集合里的文档,比如想查看一个文档,可以使用findOne; 如下所示:

3.3 更新update。
我们可以使用update来更新数据,update至少接收二个参数,第一个是限定条件(用于匹配待更新的文档)。第二个是新的文档。
比如我们之前的post集合,现在想添加一个新key的话,比如增加 comments键,用于对之前写的博客增加评论功能。那么评论功能肯定是一个数组,因为有多条数据,我们可以看如下所示:
如上命令,先使用 post.comments = []; 向post集合中增加 comments属性,然后我们使用 db.blog.find() 先查询下blog集合,发现先没有comments变量,
然后使用 db.blog.update({title: 'this is blog'}, post); 更新数据,第一个参数是匹配到那一条数据,第二个参数是更新后的数据。最后使用db.blog.find()方法查询后,发现数据更新了。
3.4 删除remove
使用remove方法可将文档从数据库中永久删除,如果没有使用任何参数,只是一个空对象,比如 db.blog.remove({})这样的,它会将集合内的所有文档全部删除,
它还可以接受一个作为限定条件的文档作为参数,比如 db.blog.remove({'title': 'xxx'}); 这样的,这样就会删除 title 为 xxx的数据了;
如下所示:

MongoDB shell 介绍的更多相关文章
- Python MongoDB使用介绍
MongoDB介绍 MongoDB是一个面向文档的,开源数据库程序,它平台无关.MongoDB像其他一些NoSQL数据库(但不是全部!)使用JSON结构的文档存储数据.这是使得数据非常灵活,不需要的S ...
- MongoDB入门三:MongoDB shell
MongoDB shell MongDB shell是一个功能完备的Javascript解释器,可以运行Javascript程序.也可以用于连接MongoDB服务器,执行脚本,对数据库进行操作.类似于 ...
- [转载]MongoDB学习(三):MongoDB Shell的使用
MongoDB shell MongoDB自带简洁但功能强大的JavaScript shell.JavaScript shell键入一个变量会将变量的值转换为字符串打印到控制台上. 下面介绍基本的操作 ...
- MongoDB入门教程二[MongoDB Shell 简介与使用]
MongoDB Shell 是MongoDB自带的JavaScript Shell,随MongoDB一同发布,它是MonoDB客户端工具,可以在Shell中使用命令与MongoDB实例交互,对数据库的 ...
- MongoDB 基础命令 (MongoDB Shell)
1.我们 mongodb 安装成功后,用上一篇的方法启动 mongodb服务 然后使用 mongodb shell 来做数据库的增删改查 2.创建数据库 语法: use 数据库名称 案例: > ...
- mongodb shell之使用js(二)
mongodb shell之使用js(二) mongodb shell不仅是个交互式shell,还能够使用js脚本进行访问. 使用js脚本进行交互的优点与缺点 (1)无需任何驱动或语言支持: (2)方 ...
- MongoDB Shell
MongoDB Shell 1.连接指定主机及数据库 mongo 127.0.0.1:30000/myDB 链接到127.0.0.1的30000端口的myDB 2.启动后连接指定数据库 *.&qu ...
- shell介绍
shell介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一:学好shell的3个基本条件: 1.vi/vim编辑器的熟练使用,ssh终端及".vimrc" ...
- MongoDB应用介绍之前
MongoDb企业应用实战(一) 写在MongoDB应用介绍之前 故事背景: 本人有幸,经老友( 现为x知名快递公司技术总监 ) 推荐进入中国前三大民营快递公司之一工作,在此非常感谢他,在此也非常 ...
随机推荐
- Apollo源码阅读笔记(二)
Apollo源码阅读笔记(二) 前面 分析了apollo配置设置到Spring的environment的过程,此文继续PropertySourcesProcessor.postProcessBeanF ...
- 【代码笔记】Web-ionic-Range
一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- Ajax的实现及使用-zepto
正文 之前归纳了ajax技术的基础知识,汗颜的是这两篇本应该在年初补上的,但因为种种原因,并没有补上.不过还好最近有空,所以开始整理之前的日记.共分为两篇:对于zepto ajax代码的实现解析;对于 ...
- Salesforce中的单点登录简介
单点登录的定义 引自维基百科: 单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性.当拥有这项属性时, ...
- SQLServer 2005Windows验证如何改为混合模式验证
SQL Server 2005 Windows验证如何改为混合模式验证[摘] by:授客 QQ:1033553122 默认情况下,SQL Server 2005 Express是采用集成的Window ...
- Flutter 安装
都说程序猿学习是不分平台的,做了一辈子的Xaml,也想看看现在最牛逼的移动技术. 看了看Google 的Flutter,好像很牛逼,不怎么需要Android和IOS基础(应该还是要的), 不过现在是B ...
- 利用python实现简单词频统计、构建词云
1.利用jieba分词,排除停用词stopword之后,对文章中的词进行词频统计,并用matplotlib进行直方图展示 # coding: utf-8 import codecs import ma ...
- OneAPM大讲堂 | 基于图像质量分析的摄像头监控系统的实现
今天咱们要介绍的技术很简单,请看场景: 你在家里安装了几个摄像头想监视你家喵星人的一举一动,然而,就在喵星人准备对你的新包发动攻击的时候,图像突然模糊了.毕竟图像模糊了以后你就没法截图回家和喵当面对质 ...
- 总结Hibernate4.1+版本与Hibernate3.3+版本区别
利用休假时间好好学习了当今流行的ORMapping框架-Hibernate,看完了马士兵老师经典的Hibernate视频教程,也算是小小入门了吧. 马老师在讲课中使用的Hibernate版本是3.3. ...
- MySQL GTID复制错误处理之跳过错误
某Slave报错信息: mysql> show slave status\G; mysql> show slave status\G; ************************** ...