MongoDB 快速入门

---恢复内容开始---

  数据库的操作一般来说都是CRUD,这其中最难的就是查询,所有所我们先来了解MongoDB中的

    插入(insert)

     说到插入,我们就必须得说说如何创建数据库,如何创建集合,然后才是如何创建文档.

      在这里说到的集合也就是关系型数据库中的表(Table),文档也就是(Row).

      现在我们要做的就是创建一个Flast数据库,创建一个m集合,然后插入一个文档.

    

   更新(Update)

    先来看简单的更新:

      我们现在想要把name:"xu"变成name:"joe",age:23

    我们可以看到用红色框表明的那三个属性

      nMatched:表示的是捕获的数量

      nUpserted:表示的是插入的数量

      nModified:表示的是修改的数量

    现在我们来看看Update的真正语法

db.collection.update(
   <query>,
   <update>,
   {
     upsert: <boolean>,(false)是否在不存在的时候插入
     multi: <boolean>,(false)是否多选
     writeConcern: <document>异常级别
   }
)

   为了演示上面这三个可选参数并说明更新后的参数,我们需要添加一个文档

  

  演示第一个  upsert(false)

  

  演示第二个  multi(false)

  

  于是有了下面的代码:

  

  从上面我们也可以看到捕获到了两条,修改了两条,

  我们还可以使用findAndModify命令来修改

  使用这个命令我们就可以很清楚的看出哪些文档被修改了,当然并不推荐这个,损耗性能

  顺便介绍一下"findAndModify"都有哪些命令:

    >query  查询语句

    >update  更新语句,只能更新找到的第一条语句

                

    >remove  (boolean)是否删除

    >new  (boolean)  代表是返回更新前的还是更新后的,默认是更新前的,从上面的value就可以看出来

        

  (删除)Remove

  删除当然是比较简单的呐,直接看语法吧!

db.collection.remove(
   <query>,(可选)删除的文档的条件
   {
     justOne: <boolean>,(可选)如果设为 true 或 1,则只删除一个文档。
     writeConcern: <document>(可选)抛出异常的级别。
   }
)

  来看下例子

 (查询)find

  查询一般都是最难的部分,因为有许多的逻辑,我们从最简单的学起:

    比如我们想查询name="jack"的文档

    可以看到我们什么都没有找到,不过我相信有了上面的修改对这个一定是可以理解的,

  我们重点是来了解 $指令

  

---恢复内容结束---

时间: 2024-10-13 15:04:08

MongoDB 快速入门的相关文章

前端开发小白必学技能—非关系数据库又像关系数据库的MongoDB快速入门命令(2)

今天给大家道个歉,没有及时更新MongoDB快速入门的下篇,最近有点小忙,在此向博友们致歉.下面我将简单地说一下mongdb的一些基本命令以及我们日常开发过程中的一些问题.mongodb可以为我们提供数据库来存储数据,目前在各大培训机构都会有1天左右的课程进行讲解,同时在实际来发中我们有存储数据和文件的需求,我们需要了解后台数据存储和提供的数据接口,以及如何获取数据,解析数据,也就是我们常说的前后端交互,数据访问等操作,首先我们来启动mongdb服务器. mongodb服务器启动的命令窗口方法:

MongoDB快速入门教程 (3.2)

3.2.索引 索引是特殊的数据结构,索引存储在一个易于遍历读取的数据集合中,建立索引,通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录,这种扫描全集合的查询效率是非常低的,特别是在数据量特别大的时候,话费的时间就非常的多 举个例子:目前我的一个集合中有170多万条数据,我们在没有建立索引的情况下测试一下查询时间 db.course.find({"name": "mongodb入门8888"})

MongoDB快速入门学习笔记3 MongoDB的文档插入操作

1.文档的数据存储格式为BSON,类似于JSON.MongoDB插入数据时会检验数据中是否有“_id”域,如果没有会自动生成.shell操作有insert和save两种方法.当插入一条数据有“_id”值,并且现在集合中已经有相同的值,使用insert插入时插入不进去,使用save时,会更新数据. 1 > db.student.drop() 2 true 3 > db.student.insert({"_id": 1, "name":"zhang

MongoDB快速入门学习笔记1 windows安装MongoDB

1.安装MongoDB 从MongoDB官网上下载MongoDB,我下载的版本是64位的3.2.6.下载完以后直接安装,我的安装目录是D:\work\MongoDB. 2.配置MongoDB的环境变量 在PATH中添加D:\work\MongoDB\Server\3.2\bin.(配置环境变量是为了更加方便的执行bin下的命令) 3.启动MongoDB 启动MongoDB的时候使用mongod命令,--dbpath 设置数据库的路径,--logpath 设置日志文件的路径 mongod --db

MongoDB快速入门学习笔记7 MongoDB的用户管理操作

1.修改启动MongoDB时要求用户验证加参数 --auth 即可.现在我们把MongoDB服务删除,再重新添加服务 mongod --dbpath "D:\work\MongoDB\data" --logpath "D:\work\MongoDB\log\mongodb.log" --install --serviceName "MongoDB" --auth 2.创建用户,并使用创建的用户登录打开shell操作界面,默认test数据,再查看所

前端开发必学技能之一———非关系数据库又像关系数据库的MongoDB快速入门第一步下载与安装

数据库总的来说,分为两个方向:关系数据库和非关系数据库.我们常见的MySQL.Oracle.SQLSerever以及IBMDB2都是属于关系数据库,这里的关系值得是二维表的结构,但是由于随着web的应用的复杂度的增加,完全基于关系的数据库,已经不能满足实际需求.开始出现了一些非关系型数据库,所谓的非关系,就不是二维表的结构.比较常用的就是使用键值对的形式来保存数据-————即NoSQL. 今天给大家分享一下前端开发中比较流行的非关系数据库之一MongoDB. MongoDB是一个基于分布式文件存

MongoDB快速入门学习笔记5 MongoDB的文档修改操作

db.集合名称.update({query},{update},upsert, multi})query:过滤条件update:修改内容upsert:如果不存在查询条件查出的记录,是否插入一条数据,默认是falsemulti:是否只修改查询条件查出的第一条记录,默认是false > db.student.update({_id:1}, {name:"zhang"}) WriteResult({ "nMatched" : 1, "nUpserted&q

MongoDB快速入门学习笔记8 MongoDB的java驱动操作

import java.util.ArrayList; import java.util.List; import java.util.regex.Pattern; import org.bson.Document; import com.mongodb.MongoClient; import com.mongodb.MongoCredential; import com.mongodb.ServerAddress; import com.mongodb.client.FindIterable;

第一部分 基础篇 第四章 MongoDB快速入门

声明:该文章主要来自<MongoDB实战>一书内容,主要想通过该书学习MongoDB的相应知识,加深理解,故写在自己的博文当中,作为记录,在最后的章节中,会有一个自己集合MongoDB数据库应用的JavaEE的web应用. MongoDB shell是MongoDB自带的交互式JavaScript shell,用来对MongoDB进行操作和管理的交互式环境. 使用./mongo --help可以查看相关连接参数,下面将从常见的操作,如插入.查询.修改.删除等几个方面阐述MongoDB shel