示例代码

1. 初始数据

> db.snapshot_test.find()
{ "_id" : ObjectId("560ba37c694895b2de42254d"), "name" : "lxy" }
{ "_id" : ObjectId("560ba381694895b2de42254e"), "name" : "zyh" }
{ "_id" : ObjectId("560ba38a694895b2de422550"), "name" : "zjj" }
{ "_id" : ObjectId("560feb75f31b120ca7308011"), "name" : "yhl" }

2. 给name=zjj的行添加age字段,增加行占用的空间

> db.snapshot_test.update({name:"zjj"},{$set:{name:"zjj",age:}})

3. 返回查询

> db.snapshot_test.find()
{ "_id" : ObjectId("560ba37c694895b2de42254d"), "name" : "lxy" }
{ "_id" : ObjectId("560ba381694895b2de42254e"), "name" : "zyh" }
{ "_id" : ObjectId("560feb75f31b120ca7308011"), "name" : "yhl" }
{ "_id" : ObjectId("560ba38a694895b2de422550"), "name" : "zjj", "age" : }

因为第三行的占用空间增大,mongdb会重新给第三条记录分配内存空间,并添加到集合的尾部

4. 快照查询结果

> db.snapshot_test.find().snapshot()
{ "_id" : ObjectId("560ba37c694895b2de42254d"), "name" : "lxy" }
{ "_id" : ObjectId("560ba381694895b2de42254e"), "name" : "zyh" }
{ "_id" : ObjectId("560ba38a694895b2de422550"), "name" : "zjj", "age" : }
{ "_id" : ObjectId("560feb75f31b120ca7308011"), "name" : "yhl" }

从返回的结果可以看出,第三行记录的顺序变回和修改空间大小之前的位置

mongodb游标快照的更多相关文章

  1. mongodb游标的使用

    1.插入数据 ;i<;i++){ db.shop.insert({_id:i+,name:+i}) } 2.查看数据数 db.shop.find().count() 3.获取游标.判断是否还存在 ...

  2. MongoDB游标操作(4)

    游标是什么? 通俗的说,游标不是查询结果,而是查询的返回资源,或者接口. 通过这个接口,你可以逐条读取. 声明游标: var cursor =  db.collectioName.find(query ...

  3. 【翻译】MongoDB指南/CRUD操作(三)

    [原文地址]https://docs.mongodb.com/manual/ CRUD操作(三) 主要内容: 原子性和事务(Atomicity and Transactions),读隔离.一致性和新近 ...

  4. mongodb 修改数据结构的一个例子以及小梳理

    mongodb的存储结构是灵活可变的,但是,并不意味着我们就肆意地使用不规则的文档结构.不规则的文档结构对于开发和后期的维护都是一个灾难.所以,还是要有一个约定的格式. 但是,由于前期设计的不周详和其 ...

  5. mongodb3.2系统性学习——5、游标 模糊查询 findAndModify函数

    1首先介绍查询结果 返回的过程: 进行查询的时候mongodb 并不是一次哪个返回结果集合的所有文档,而是以多条文档的形式分批返回查询的结果,返回文档到内存中. 好处: 减少了客户端与服务器端的查询负 ...

  6. mongoDB入门必读(概念与实战并重)

    一.概述 MongoDB是一个基于分布式文件存储的数据库开源项目.由C++语言编写.旨在为WEB应用提供可护展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是 ...

  7. MongoDB入门必读(概念与实战并重)

    MongoDB入门必读(概念与实战并重) 一.概述 MongoDB是一个基于分布式文件存储的数据库开源项目.由C++语言编写.旨在为WEB应用提供可护展的高性能数据存储解决方案. MongoDB是一个 ...

  8. MongoDB整理笔记のCRUD

    添加 下面我们来建立一个test 的集合并写入一些数据.建立两个对象j 和t , 并保存到集合中去.在例子里 “>” 来表示是 shell 输入提示符    > j = { name : ...

  9. 【翻译】MongoDB指南/CRUD操作(四)

    [原文地址]https://docs.mongodb.com/manual/ CRUD操作(四) 1 查询方案(Query Plans) MongoDB 查询优化程序处理查询并且针对给定可利用的索引选 ...

随机推荐

  1. 如何选字体(font-family)

    一.默认字体情况 1.Window下: 宋体(SimSun):Win下大部分游览器的默认字体,宋体在小字号下(如12px.14px)的显示效果还可以接受,但是字号一大就非常糟糕了,所以使用的时候要注意 ...

  2. DevComponents.DotNetBar2.dll设置样式的使用

    有点模仿QQ消息盒子的感觉,代码如下: using System; using System.Collections.Generic; using System.ComponentModel; usi ...

  3. CodeForces 992C Nastya and a Wardrobe(规律、快速幂)

    http://codeforces.com/problemset/problem/992/C 题意: 给你两个数x,k,k代表有k+1个月,x每个月可以增长一倍,增长后的下一个月开始时x有50%几率减 ...

  4. Linux设置环境变量PATH路径的两种方法

    echo 'export dataPath=$HOME/data/pre' >> ~/.bash_profile 路径即刻生效: . .bash_profile 或 source .bas ...

  5. Linux服务器性能查看命令

    一.uptime命令 [root@#test~]# uptime15:26:42 up 101 days, 18:44,  3 users,  load average: 0.18, 0.22, 0. ...

  6. 分层结构与MVC模式

    一.分层结构1.所谓分层结构.把不同的功能代码封装成类,把相同功能的类封装在一个个的包中,也叫层.功能归类如下:实体类:封装数据,是数据的载体,在层与层之间进行传递,数据也就传递了.比如说要传递学生信 ...

  7. mui webview 预加载

    所谓的预加载技术就是在用户尚未触发页面跳转时,提前创建目标页面,这样当用户跳转时,就可以立即进行页面切换,节省创建新页面的时间,提升app使用体验.mui提供两种方式实现页面预加载. 方式一:通过mu ...

  8. 如何使用jQuery给asp.net的TextBox取值和赋值

    解决办法: 可以在控件中先设置属性ClientInstandName的值和ID的值一样,再使用$("#ID").val("12345")

  9. openfire配置好文

    http://www.th7.cn/db/mysql/201406/59838.shtml 下载地址:Openfire 3.8.2 Release

  10. crm项目-业务实现

    ###############  crm业务    ############### """ 校区管理,部门管理,课程管理, 这三个都比较简单 1,只需要展示校区名称,这是 ...