接着学习一下mongodb的基本的CRUD

  先列出基本知识点,再给出相关的例子

  增:语法: db.collectionName.insert(document);

  1: 增加单篇文档,不指定_id时会自动生成一个_id

  db.collectionName.insert({title:’nice day’});

  2: 增加单个文档,并指定_id

  db.collectionName.insert({_id:8,age:78,name:’lisi’});

  3:增加多个文档

  db.collectionName.insert([

  {time:'friday',study:'mongodb'},

  {_id:9,gender:'male',name:'QQ'}

  ]);

1. 

2. 

3. 

  删:语法: db.collection.remove(查询表达式, 选项);选项是指  {justOne:true/false},是否只删一行, 默认为false

  注意

  1: 查询表达式依然是个json对象

  2: 查询表达式匹配的行,将被删掉.

  3: 如果不写查询表达式,collections中的所有文档将被删掉.

  例1: db.stu.remove({sn:’001’});

  删除stu表中 sn属性值为’001’的文档

  例2: db.stu.remove({gender:’m’,true});

  删除stu表中gender属性为m的文档,只删除1行.

  删除全部(清空表)

  

  删除单条数据

  

  删除全部匹配

   

  改:语法: db.collection.update(查询表达式,新值,选项);

  db.news.update({name:'QQ'},{name:'MSN'});

  结果: 文档中的其他列也不见了,改后只有_id和name列了.

  即--新文档直接替换了旧文档,而不是修改 

  修改时的赋值表达式

  $set  修改某列的值

  $unset 删除某个列

  $rename 重命名某个列

  $inc 增长某个列

  $setOnInsert 当upsert为true时,并且发生了insert操作时,可以补充的字段

  Option的作用:

  {upsert:true/false,multi:true/false}

  Upsert---是指没有匹配的行,则直接插入该行.(和mysql中的replace一样)

  multi:指是否作用于多行,默认为false

  这是用新文档代替旧文档

  这是更新操作

  这是一个综合操作

  作用于多行

  如果发生了新增操作,在插入要修改列的基础上,还会插入setOnInsert的列

  查: find, findOne:语法: db.collection.find(查询表达式,查询的列);

  查询所有列

  查询指定列,默认会查出_id列

  查指定列,不查_id列

  查指定条件下的指定列

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}

mongodb基础学习2-基本CRUD的更多相关文章

  1. MongoDB基础学习

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  2. mongodb基础学习8-复制集

    今天来简单学习一下复制集(replication),什么是复制集呢,类似于mysql的主从复制吧 简单来说就是有多个mongodb的实例,多个实例有相同的内容,其中一台用于读写,其它用于备份,当用于读 ...

  3. mongodb基础学习1-基本说明及安装

    以前看过一些mongodb的视频,但只看到一半没有看完,也没有同步安装软件动手操作,正好最近没事,打算花点时间从头学习一遍,边学习边动手操作,学习的过程在此进行记录. 好了,下面说一下今天的学习内容. ...

  4. MongoDB基础学习(一) MongoDB概念解析

    .基础概念 SQL术语/概念 MongoDB术语/概念 说明 database database 数据库 table collection 数据表/集合 row document 数据记录行/文档 c ...

  5. mongodb基础学习7-备份与恢复

    下面来讲讲mongodb的备份与恢复 备份可以备份为二进制格式,如果是用于数据交换,可以备份成json或cvs格式 导入/导出可以操作的是本地的mongodb服务器,也可以是远程的. 所以,都有如下通 ...

  6. mongodb基础学习6-用户管理

    下面来说一下用户管理,前面对mongodb进行操作都无需用户名密码进行登陆,可以设置用户进行数据库的访问 添加用户:三个参数:用户名,密码,是否只读 开启权限验证 进行验证 修改密码 删除用户 用户角 ...

  7. mongodb基础学习4-游标

    今天来讲讲游标的操作,可以先获取一组文档,再对每一个文档进行操作. 因为mongodb底层是js引擎,所有可以像操作js一样操作mongodb,比如插入数据 游标的使用:声明游标,判断是否有下一条数据 ...

  8. Mongodb基础 学习小结

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

  9. MongoDB 基础学习

    1.MongoDB 概念解析 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row docume ...

随机推荐

  1. 4.图像sensor的特性和驱动解析

    修改 摄像头SDK中支持的sensor需要做的事 例如:ar0130 --> ov9712 1.修改加载load3518e脚本的参数 vi /etc/profile ./load3518e -i ...

  2. cookie、localStorage、sessionStorage 的生命周期

    生命周期 存储 生命周期 cookie 没有设置 expires 选项时,cookie 的生命周期仅限于当前会话中,关闭浏览器意味着这次会话的结束,所以会话 cookie 仅存在于浏览器打开状态之下. ...

  3. win xp 关闭动画屏幕角色,那只小狗

    这个动画屏幕角色每次会占用两秒左右的时间. 在搜索选项中打开"改变首选项(G)" -选择 “不使用动画屏幕角色(S)”. - -

  4. JsonCpp使用方法详解

    JSON全称为JavaScript ObjectNotation,它是一种轻量级的数据交换格式,易于阅读.编写.解析.jsoncpp是c++解析JSON串常用的解析库之一. jsoncpp中主要的类: ...

  5. adb命令查看app的日志

    前言 在做app测试的时候,经常会遇到异常,此时如果开发没有异常保存,那么测试就得通过adb命令来查看日志信息.基于Windows平台的操作: logcat输出日志 一.把日志输出到手机指定目录 其命 ...

  6. ASP.NET Web Pages:文件

    ylbtech-.Net-ASP.NET Web Pages:文件 1.返回顶部 1. ASP.NET Web Pages - 文件 本章介绍有关使用文本文件的知识. 使用文本文件 在前面的章节中,我 ...

  7. Linux设置history命令显示时间

    效果如图: 设置方法如下: vim /etc/bashrc #command-->history set HISTFILESIZE=2000 #保存命令的总数默认总数为1000 HISTSIZE ...

  8. 阿里云EC2+QEMU虚拟机+ROS完全教程!

    ---恢复内容开始--- 1.安装centos6.5 x64 同时记录,当前centos分配得到的IP,子网掩码,网关,以及MAC!!! 查看IP.mac命令ip add 查看网关命令cat /etc ...

  9. Java中的volatile关键字为什么不是不具有原子性

    Java中long赋值不是原子操作,因为先写32位,再写后32位,分两步操作,而AtomicLong赋值是原子操作,为什么?为什么volatile能替代简单的锁,却不能保证原子性?这里面涉及volat ...

  10. Spring MVC springMVC-servlet.xml

    DispatcherServlet的配置: DispatcherServlet是SpringMVC的前端控制器,所有的请求都经过前端控制器,也是项目中出现的唯一一个servlet,在 web.xml中 ...