MongoDB shell

  MongoDB自带简洁但功能强大的JavaScript shell。JavaScript shell键入一个变量会将变量的值转换为字符串打印到控制台上。

  下面介绍基本的操作,一些注意事项。数据库CRUD操作将在下面的篇幅中介绍《NoSQL学习之路 (四):创建、读取、更新、删除(CRUD)

  打开命令提示(cmd.exe)。进入到MongoDB解压的目录的bin目录下,即D:\NoSQL\mongodb-win32-x86_64-2.4.3\bin;然后执行mongo.exe(或者mongo)启动MongoDB shell。

  

  shell默认连接test数据库。要使用别的数据库,在服务器地址后添加斜杠和数据库名就可以了(下图连接的就是本地默认端口的mongod,但用的是admin数据库):  

  

  还有一种方法选择连接数据库,像SQL shell中一样,使用 "use databaseName",数据库不存在也没关系。使用"db"查看当前连接数据库名词。

  

  使用--nodb选项启动shell,而不连接数据库。

  

  Tips:使用ctrl+w 快速删除光标所在行内容。

  使用db.help()可以查看数据库级别的命令的帮助,集合的相关帮助可以通过db.foo.help()来査看。

  有个了解函数功用的技巧,就是在输入的时候不要输括号。这样就会显示该函数的JavaScript源代码。下面我们看看remove的机制:

  

  使用db.集合名的方式来访问集合一般不会有问题,但如果集合名恰好是数据库类的一个属性时就不行了。当JavaScript只有在db中找不到指定的属性时,才会将其作为集合返回。当有属性
与目标集合同名时,可以使用getCollection函数。

  例如,要访问version这个集合。因为db.version是个数据库函数(它返回正在运行的MongoDB服务器的版本)。所以输入db.version会显示该函数的JavaScript源代码,而不是我们想显示的集合。
  

  当我们遍历集合众文档信息时,可以书用"."操作符。

Show(db.posts.title);
Show(db.posts.content);
……

  也可以使用数组访问形式来访问子集合:

collections=["title","author","content","date"];
for (i in collections) {
  Show(db.posts[collections[i]]);
}

JavaScript解释器

  shell是功能完本的JavaScript解释器 可以运行任何JavaScript程序.

  基本运算:

  

  调用Javascript标准库或者函数:

  

  从shell中可以连接任意多个数据库,这对多个服务器的环境还是非常方便的。调用connect (),并将结果赋值给变量。

  (分片环境中待补充----)

原文地址:http://www.cnblogs.com/egger/archive/2013/04/30/3052142.html

[转载]MongoDB学习(三):MongoDB Shell的使用的更多相关文章

  1. MongoDB学习笔记:MongoDB 数据库的命名、设计规范

    MongoDB学习笔记:MongoDB 数据库的命名.设计规范     第一部分,我们先说命名规范. 文档 设计约束 UTF-8 字符 不能包含 \0 字符(空字符),这个字符标识建的结尾 . 和 $ ...

  2. mongodb学习(三) 安装和基本CRUD

    菜鸟啊...先吐槽一下自己 发现mongodb已经升级到2.6标准版了.  服务端最新安装方法: http://www.cnblogs.com/lzrabbit/p/3682510.html 一 准备 ...

  3. MongoDB学习笔记二—Shell操作

    数据类型 MongoDB在保留JSON基本键/值对特性的基础上,添加了其他一些数据类型. null null用于表示空值或者不存在的字段:{“x”:null} 布尔型 布尔类型有两个值true和fal ...

  4. MongoDB 学习三

    这章我们学习MongoDB的查询操作. Introduction to find find方法用于执行MongoDB的查询操作.它返回collecion中的documents子集,没有添加参数的话它将 ...

  5. MongoDB学习(三)

    MongoDB条件操作符 $gt  > 大于 $lt   < 小于 $gte >= 大于等于 $lte  <= 小于等于 $ne  !=  不等于 条件操作符可用于查询语句中, ...

  6. MongoDb学习三(spring-data-mongodb)

    本文采用2个种配置方式.xml配置 代码配置方式进行数据库的连接.实现简单的增删该查等一些操作.代码都有注释官方文档如下https://docs.spring.io/spring-data/mongo ...

  7. MongoDB学习笔记~MongoDB实体中的值对象

    回到目录 注意,这里说的值对象是指在MongoDB实体类中的,并不是DDD中的值对象,不过,两者也是联系,就是它是对类的补充,自己本身没有存在的价值,而在值对象中,也是不需要有主键Id的,这与DDD也 ...

  8. MongoDB学习笔记——MongoDB 连接配置

    MongoDB连接标准格式: mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[dat ...

  9. MongoDB 学习笔记(原创)

    MongoDB 学习笔记 mongodb 数据库 nosql 一.数据库的基本概念及操作 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table ...

  10. MongoDB学习笔记系列

    回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助 ...

随机推荐

  1. 关于git fetch 和git pull 的区别

    1.fetch 相当于是从远程获取最新版本呢到本地,不会自动merge. git fetch origin master:tmpgit diff tmp git merge tmp 2. git pu ...

  2. PHP 简易读取文件目录下的文件,生成css spirte图片

    因为个人不是对PS熟悉,不清楚如何在PS中生成一张横向有序的spirte图片,使用了"css sprite V4.3"版本,生成的图片会出现压缩图片大小的情况,本想修改原作者开发的 ...

  3. [CSS][转载]内层div的margin-top影响外层div

    参考 内层div的margin-top影响外层div——引出外边距合并 div嵌套导致子区域margin-top失效不起作用的解决方法 我使用的是在外层的div中添加 border: 1px soli ...

  4. VS 2015 (RC)下Entitiy Framework 升级后CodeFirst命令不能使用

    前阵子闲的没事吧自己项目的Entitiy Framework 升级到6.1.3了,然后紧接着问题来了: Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值. 所在位置 F:\S ...

  5. 在C#中创建类型

    重载构造函数: using System; public class Wine { public decimal Price; public int Year; public Wine (decima ...

  6. 新建的linux虚拟机找不到eth0解决办法

    新建的linux虚拟机通过 vi /etc/sysconfig/network-scripts/ifcfg-eth0进行配置: 再用ifconfig查看ip竟然没有eth0,只有lo和virbr0 其 ...

  7. Ubuntu下GCC的安装以及版本控制

    在Ubuntu下安装GCC和其他一些Linux系统有点不一样. 方法一: 该方法超简单:sudo apt-get  build-depgcc 就上面这条命令就可以搞定 方法二:sudo apt-get ...

  8. HDOJ1005 数列

    Problem Description A number sequence is defined as follows:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) ...

  9. highcharts图表

    最近项目中用到highcharts雷达图,如下 其实echarts就不错,echarts用canvas,highcharts用svg,各有特点 代码如下: index.html <!doctyp ...

  10. JEECG开发总结

    一:datagrid列表 (1)时间:<t:dgCol title="创建时间" field="createtime" width="60&qu ...