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. layer弹出层不居中解决方案,layer提示不屏幕居中解决方法,layer弹窗不居中解决方案

    layer弹出层不居中解决方案,layer提示不屏幕居中解决方法,layer弹窗不居中解决方案 >>>>>>>>>>>>> ...

  2. CSS属性[text-overflow]使用问题

    text-overflow:clip | ellipsis 这个属性使用必须通过几个属性一块才能使用 1,overflow:hidden; 这个属性是内容区装不下内容应该怎么办.这里让溢出内容直接不显 ...

  3. 在XP系统下搭建maven环境出的问题 Unable to locate the Javac Compiler in: C:\Program Files\Java\jre6\..\lib\tools.jar

    Build errors for spider; org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute g ...

  4. 0708_Java如何设置输入流

    1.Java如何设置输入流:?(以解决看下面实例代码) 2.Java如何设置全局变量:(以解决public static即可) 3.Java为什么在做那种机试题目的时候都要设置成静态的:(以解决,因为 ...

  5. sorted函数

    我们需要对List.Dict进行排序,Python提供了两个方法对给定的List L进行排序,方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副本方法2.用built-in函数so ...

  6. 牛客网算法题之All-in-All

    题目: 有两个字符串s 和t,如果即从s 中删除一些字符,将剩余的字符连接起来,即可获得t.则称t是s 的子序列.请你开发一个程序,判断t是否是s的子序列. 输入描述: 输入包含多组数据,每组数据包含 ...

  7. springmvc学习(一)helloworld实例

    今天介绍的是springmvc的学习,越来越多的企业开始选择springmvc+mybatis来构建系统架构,在电商热门的今天,springmvc+mybatis已成为电商项目架构的很好搭配.Spri ...

  8. 水题~~~~HDU 4788

    Description Yesterday your dear cousin Coach Pang gave you a new 100MB hard disk drive (HDD) as a gi ...

  9. mysql常见的hint(转载的)

    mysql常用的hint对于经常使用oracle的朋友可能知道,oracle的hint功能种类很多,对于优化sql语句提供了很多方法.同样,在mysql里,也有类似的hint功能.下面介绍一些常用的. ...

  10. cocos2dx 初探 - VS2012 HELLOWORLD

    最近决定用cocos2dx 来做些试验性的东西,先装了个vs2012 再从网上下了cocos2dx-2.1.4就开工了. 仅是Windows 桌面调试还是很简单的. 上面三个项目源: Hellocpp ...