基本操作

增删改查实一个数据库必备的操作,接下来我们就说说怎么在shell下进行增删改查。

我们另外打开一个“命令指示符”窗口(注意:之前的不能关闭),输入mongo打开MongoDB的shell,这个shell就是MongoDB的客户端

F:\mongodb\data\bin>mongo
MongoDB shell version: 3.4.4
connecting to: test
>

默认连接的数据库是“test”

  1. 增增加操作

    我们来增加一个名为“Person”的集合(可以理解为数据库表)

    > db.Person.insert({"name":"张三", "age":10})
    WriteResult({ "nInserted" : 1 })
    > db.Person.insert({"name":"李四", "age":20})
    WriteResult({ "nInserted" : 1 })
    >
  2. 查询操作

    条件查询:

    > db.Person.find({"name":"张三"})
    { "_id" : ObjectId("5617275737a5aa2cafdb4b84"), "name" : "张三", "age" : 10 }
    >

    查询全部:

    > db.Person.find()
    { "_id" : ObjectId("5617277b37a5aa2cafdb4b85"), "name" : "李四", "age" : 20 }
    { "_id" : ObjectId("56172d069d1af21ad1f769c7"), "name" : "张三", "age" : 40 }
    >

    注意:大家发现了没有?集合中多了一个“**_id**”的字段,这个字段是默认加入的GUID,目的是保证数据的唯一性,在关系型数据库的时候,我们都会给表加一个主键,在MongoDB都可以省了自己加主键了。

  3. 更新操作

    update命令有两个参数,第一个是“查找的条件”,第二个是“更新的值”

    > db.Person.update({"name":"张三"}, {"name":"张三","age":40})
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.Person.find({"name":"张三"})
    { "_id" : ObjectId("56172d069d1af21ad1f769c7"), "name" : "张三", "age" : 40 }
    >
  4. 删除操作

    > db.Person.remove({"name":"张三"})
    WriteResult({ "nRemoved" : 1 })
    > db.Person.find()
    { "_id" : ObjectId("5617277b37a5aa2cafdb4b85"), "name" : "李四", "age" : 20 }

mongodb 学习二的更多相关文章

  1. mongodb学习(二)分级查询数组中的值

    (PS: 标题有点不妥当...) 大概是这样...数据结构如下: 需要模糊查询title的值... mongodb中操作语句: 主要是注意这里urlElements不需要加[0]...我开始的时候写成 ...

  2. mongodb学习(二)

    昨天给ubuntu13.04安装ati的显卡驱动,ubuntu本来对ati的显卡支持不是很好,没办法unity启动器没有了,ccsm也没有任何作用,只得重新安装了12.10,近期也不打算升级13.04 ...

  3. MongoDB学习:(二)MongoDB简单使用

    MongoDB学习:(二)MongoDB简单使用 MongoDB使用: 执行mongodb的操作之前,我们需要运行命令,来进入操作命令界面 >mongo 提示该错误,说明我们系统缺少一个补丁,该 ...

  4. MongoDB学习总结(二)

    前言:学习札记! MongoDB学习总结(二) 1.  安装.初识 之前写过一篇MongoDB的快速上手文章,里边详细的讲了如何安装.启动MongoDB,这里就不再累述安装过程,简单介绍一下Mongo ...

  5. MongoDB学习笔记二- Mongoose

    MongoDB学习笔记二 Mongoose Mongoose 简介 之前我们都是通过shell来完成对数据库的各种操作, 在开发中大部分时候我们都需要通过程序来完成对数据库的操作 而Mongoose就 ...

  6. MongoDB学习笔记(二)--Capped集合 && GridFS存储文件

    Capped集合                                                            Capped集合的大小是固定的,如果空间都被用完了,新添加的对象 ...

  7. 【MongoDB学习之二】MongoDB数据库、文档、集合、元数据

    环境 MongoDB 4.0 CentOS6.5_x64 一.连接语法格式: mongodb://[username:password@]host1[:port1][,host2[:port2],.. ...

  8. Mongodb学习笔记一(Mongodb环境配置)

    Mongodb学习 说明: MongoDB由databases组成,database由collections组成,collection由documents组成,document由fileds组成.Mo ...

  9. MongoDB学习记录

    一.操作符 "$lt" :"<""$lte" :"<=""$gt" :"> ...

随机推荐

  1. 如何动态修改网页的标题(title)?

    有时候我们需要复用一个页面,但是又希望他们拥有各自的标题,这时候就需要动态的去更改页面的title了,不然所有页面都是一个标题. 这时候就会想到使用js或jQuery去实现了. 1.js方式. 首先, ...

  2. vue ajax获取数据的时候,如何保证传递参数的安全或者说如何保护api的安全

    https://segmentfault.com/q/1010000005618139 vue ajax获取数据的时候,如何保证传递参数的安全或者说如何保护api的安全 点击提交,发送请求.但是api ...

  3. phpstorm 怎么实现分屏展示

  4. @RequestMapping 相关 spring

    *      * @param request HttpServletRequest     * @param delList 削除Idエスト     * @return 削除結果     * @th ...

  5. spring data jpa 学习笔记

    springboot 集成 springData Jpa 1.在pom.xml添加依赖 <!-- SpringData-Jpa依赖--> <dependency <groupI ...

  6. [转] Freemarker的常用技巧总结

    1,截取字符串 有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度 < lt. <= lte. > gt. >= gte < ...

  7. Java进阶篇(五)——Java的I/O技术

    程序中,为了永久的保存创建的数据,需要将其保存在磁盘文件中,以便在其它程序中使用它们.Java的I/O技术可以将数据保存到文本文件.二进制文件甚至是ZIP压缩文件中,以达到永久性保存数据的要求. 本篇 ...

  8. libev-4.20编译安装及简单使用

    1.源码下载地址: http://www.csdn.net/tag/libev/download 2.库的编译与安装 解压文件,进入文件目录 编译的时候需要首先切换为管理员(root)账户,然后执行以 ...

  9. SQL Server 2005的服务器角色(public)的问题

    SQL Server 默认会有9个服务器角色,而且这些角色是不能删除和新增.修改的.关于这些角色相关介绍和权限,请参考 其中有一个特殊的角色public,任何登录都会属于该角色,它只拥有的权限是VIE ...

  10. promise使用方法

    代码报错会走向失败时的回调 let p = new Promise((resolve, reject) => { throw new Error("我错了"); //会失败 ...