在命令行中使用mongo自带的shell命令来执行CRUD操作

首先链接到数据库

db.qiao.insert({"qq":1})

db.qiao.save({"qq":3})

db.qiao.save({"_id" : ObjectId("5721461f5b4e77bbbae66982"),"qq":100})

save和insert的区别

insert只能插入数据,但是它可以插入一个列表的数据

save如果数据库中有这条数据就执行修改操作,如果没有这条数据就执行插入操作

insert的效率比save要高

db.qiao.remove({"qq":3})     根据条件删除数据

db.qiao.remove()                  移除整个文档,但不删除文档的结构

db.qiao.drop()        删除掉整个数据库,这个的数据是非常快的(但是删除完后需要重新建立索引)

删除掉,某个键或者是某个字段

我想删除掉 book 这个key,以后都不要了

{
"_id" : ObjectId("5706032acd0a6194868cf53e"),
"book" : "干你妹三千",
"list" : {
"name" : "乔安生",
"age" : 22.0
}
}

 db.ansheng.update({"_id":ObjectId("5706032acd0a6194868cf53e")},{"$unset":{"book":""}}) 就可以吧这个key干掉

删除数据是永久性的,不能撤销,也不能恢复。

db.cs.update({"_id" : ObjectId("571f46e0a7b78abfa1768ebf")},{z:20}) 最简单的修改,号前的是搜索参数,后的是修改参数

db.cs.update({"_id" : ObjectId("571f46e0a7b78abfa1768ebf")},{"$inc":{"z":1}})

$inc  z加1  这个可以用来做统计方面的东西,或者过生日的时候执行这种命令让年龄加一

db.cs.update({"_id" : ObjectId("571f46e0a7b78abfa1768ebf")},{"$set":{"book":"C#大全"}})

$set  指定一个字段的值。如果这个字段不存在,则创建他。

$set  还可以直接修改内嵌文档中的数据

db.ansheng.update({"_id":ObjectId("5706032acd0a6194868cf53e")},{"$set":{"list.name":"乔安生","list.age":22}})  这句代码中就是直接修改 ansheng这个文档中的 list 这个内嵌文档

$set  还可以改键的类型,比如我现在的 book 这个键里面就一个 "C#大全",我现在想多加一本书 "干你妹三千"

db.ansheng.update({"_id":ObjectId("5706032acd0a6194868cf53e")},{"$set":{"book":["C#大全","干你妹三千"]}})     这句话就可以吧这个键的类型改成 数组类型的

db.cs.find()      在shell中一次返回10条数据

db.cs.findOne()    返回一条数据

db.cs.find({"z":20})   根据查询条件返回数据

Mongo命令行中执行CRUD的更多相关文章

  1. 转 mysql mysql命令行中执行sql的几种方式总结

    https://www.jb51.net/article/96394.htm 1.直接输入sql执行 MySQL> select now(); +---------------------+ | ...

  2. 当在命令行中执行virtualenv venv时报此错误:'utf-8' codec can't decode byte 0xd5 in position 38: invalid continuation by

    1.windows中安装虚拟环境virtualenv时, 当在命令行中执行virtualenv venv时报此错误:'utf-8' codec can't decode byte 0xd5 in po ...

  3. 直接命令行中执行PHP代码(PHP CLI模式)

    一般执行PHP代码,需要把PHP代码写成一个文件,但是有时候查一些PHP配置没有这个必要,能不能直接执行PHP代码呢? 答案是可以的. 在命令行下,采用CLI方式执行PHP代码,这里列出几个常用的命令 ...

  4. 在命令行中执行kms命令激活Microsoft Office 2010

    激活office2010的命令是什么?激活office2010除了使用office2010激活工具之外,还可以使用kms命令来激活office2010,但是office2010激活命令还需考虑32位或 ...

  5. 在 Linux 命令行中使用和执行 PHP 代码

    PHP是一个开源服务器端脚本语言,最初这三个字母代表的是“Personal Home Page”,而现在则代表的是“PHP:Hypertext Preprocessor”,它是个递归首字母缩写.它是一 ...

  6. 在 Linux/windows下 命令行中使用和执行 PHP 代码[交互式php]

    [注释]在ubuntu下,升级php到7.1版本,虽然提示的是Interactive mode enabled, 但实际上可以直接书写命令,和interactive shell效果一样. 一:wind ...

  7. php从命令行中接收参数

    php一直都是作为服务器编程的主要角色,其实php也可已做脚本,比如从命令行中接收一些参数,下面就简单介绍一下如何从命令行中接收参数 代码如下: <?php var_dump($argv); ? ...

  8. php在cli模式下取得命令行中的参数的方法-getopt命令行可传递数组-简单自定义方法取命令行参数

    在cli模式下执行PHP时,自动给脚本文件传递了一个变量$argv,其值即是一个命令中所有值组成的数组(以空格区分),在PHP程序中接收参数有3种方法1.直接使用argv变量数组. 2.使用$_SER ...

  9. 在命令行中直接运行带main方法的java

    用了很久的java,基本都是交给服务器完成的执行,有page之类的入口,或者是在IDE工具中直接 Run As Java Application. 并且一直对安装java之后配置JAVA_HOME,p ...

随机推荐

  1. ZooKeeper使用原理

    ZooKeeper的基本原理 ZNode的基本概念 ZooKeeper数据模型的结构与Unix文件系统很类似,整体上可以看作是一棵树,每个节点称做一个ZNode.每个ZNode都可以通过其路径唯一标识 ...

  2. BZOJ4134 : ljw和lzr的hack比赛

    设$f[x]$为$x$子树里的子游戏的sg值,$h[x]$为$x$所有儿子节点$f[x]$的异或和,则: $f[x]=mex(y到x路径上所有点的h的异或和\ xor\ y到x路径上所有点的f的异或和 ...

  3. C# 如何判断数据是否为 NaN

    double a = 0 / 0d; if (double.IsNaN(a)){ //do } 在浮点数计算中, 0除以0将得到NaN ,正数除以0将得到PositiveInfinity ,负数除以0 ...

  4. MyBatis insert返回主键(sqlserver2008)

    mybatis insert返回主键(sqlserver2008)   MyBatisXML配置,下面两种方式都行 方式1: <insert id="insert" para ...

  5. JBPM4.4学习API

    一.流程引擎API org.jbpm.api.ProcessEngine是jbpm4所有的Service API 之源. 既所有的Service API(服务接口)都从ProcessEngine中获取 ...

  6. Qt connect parent widget 连接父控件的信号槽

    Qt中的信号槽系统是不同类中间传递数据的神器,如果连接父子空间之间的信号槽很重要,在父类中实例化子类的时候一定要注意将父类连上,不然信号槽无法使用,比如若子类是个对话框Dialog类,一定不要忘了加t ...

  7. vs2005中删除最近打开的项目和文件的记录

    vs2005中总是保留最近打开的项目和文件的记录,甚至是以删除的它也不删,-_-!下面介绍几种删除的方法: 第一种:建立一个bat文件,以后双击即可清除,内置代码如下: @echo off@REG D ...

  8. html5文章 -- 使用 jQuery Mobile 与 HTML5 开发 Web App ——开发原则 | Kayo's Melody

    最近专注研究 jQuery Mobile —— 一款很方便就可以把 Web App 包装成适合 Android 与 iPhone 等触屏移动设备的 Javascript 库,结合 jQuery Mob ...

  9. post可以直接把get请求代入到目标url中

    Feigong --非攻 非攻 取自<秦时明月>--非攻,针对不同情况自由变化的武器 Feigong,针对各种情况自由变化的mysql注入脚本 Feigong,In view of the ...

  10. SAE saestorage.class.php文件的封装代码

    Source for file saestorage.class.php Documentation is available at saestorage.class.php <?php /** ...