MongoDB学习笔记(2):数据库操作及CURD

数据库操作

创建数据库

  

  首先MongoDB中数据库的创建和数据库的切换都是使用命令,USE DATABASE,如果要切换的数据库不存在则会进行创建,但是我们看到虽然已经创建成功,当前也显示我们在使用myBD数据库,但是却不存在与show列表中,这是因为它当前为空,不存在任何数据,现在我们向其中插入数据:

  

删除数据库

  

数据集合的操作

  

此处勘正:

db.COLLECTION_NAME.insert(document)

数据插入的命令如上,所以此处插入文档时,已经指定了集合tempBD,所以相当于插入是创建了集合。

CURD操作

插入

创建或插入操作将新文档添加到集合中。如果集合当前不存在,则插入操作将创建该集合。

MongoDB提供了以下方法将文档插入到集合中:

  • db.collection.insertOne()3.2版本中的新功能
  • db.collection.insertMany()3.2版本中的新功能

在MongoDB中,插入操作只针对一个集合。 MongoDB中的所有写入操作在单个文档级别上都是原子级的。

  

查询

读取操作从集合中检索文档;即查询集合的文档。 MongoDB提供了以下方法来读取集合中的文档

您可以指定标识要返回的文档的查询过滤器或条件。

  

  

查询的更高级操作,还请见如下官网的实例:

更新文档

  更新操作修改集合中的现有文档。 MongoDB提供了以下方法来更新集合的文档:

  在MongoDB中,更新操作针对单个集合。

  MongoDB中的所有写入操作在单个文档级别上都是原子级的。 您可以指定标识要更新的文档的条件或过滤器。这些过滤器使用与读取操作相同的语法。

  

删除操作

  删除操作从集合中删除文档。 MongoDB提供了以下方法来删除集合的文档:

  在MongoDB中,删除操作以单个集合为目标。 MongoDB中的所有写入操作在单个文档级别上都是原子级的。

  您可以指定标识要删除的文档的标准或筛选器。这些过滤器使用与读取操作相同的语法。
  

MongoDB学习笔记(2):数据库操作及CURD初步的更多相关文章

  1. Mongodb学习笔记五(C#操作mongodb)

    mongodb c# driver(驱动)介绍 目前基于C#的mongodb驱动有两种,分别是官方驱动(下载地址)和samus驱动(下载地址). 本次我们只演示官方驱动的使用方法. 官方驱动文档查看 ...

  2. ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )

    //TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...

  3. MongoDB学习笔记——文档操作之查询

    查询文档 使用db.COLLECTION_NAME.findOne()可以查询所有满足条件的第一条数据 预发格式如下: db.COLLECTION_NAME.findOne(<query> ...

  4. MongoDB学习笔记~官方驱动的原生Curd操作

    回到目录 MongoDB的官方C#驱动,让我们使用起来也很方便,但对于Linq开发人员来说,可能有些不了解,所以,我还是将官方驱动进行了二次封装,而对于一个比较个性化的mongo操作,使用我封装的也很 ...

  5. MongoDB学习笔记二—Shell操作

    数据类型 MongoDB在保留JSON基本键/值对特性的基础上,添加了其他一些数据类型. null null用于表示空值或者不存在的字段:{“x”:null} 布尔型 布尔类型有两个值true和fal ...

  6. Symfony2学习笔记之数据库操作

    数据库和Doctrine让我们来面对这个对于任何应用程序来说最为普遍最具挑战性的任务,从数据库中读取和持久化数据信息.幸运的是,Symfony和Doctrine进行了集成,Doctrine类库全部目标 ...

  7. MongoDB学习笔记——文档操作之增删改

    插入文档 使用db.COLLECTION_NAME.insert() 或 db.COLLECTION_NAME.save() 方法向集合中插入文档 db.users.insert( { user_id ...

  8. Laravel 学习笔记之数据库操作——Eloquent ORM

    1. 时间戳 默认情况下在使用ORM操作数据库进行添加.修改数据时, created_at 和 updated_at列会自动存在于数据表中,并显示的是 ‘2017’格式,如果想以 Unix时间戳格式存 ...

  9. ThinkPHP 学习笔记 ( 四 ) 数据库操作之关联模型 ( RelationMondel ) 和高级模型 ( AdvModel )

    一.关联模型 ( RelationMondel ) 1.数据查询 ① HAS_ONE 查询 创建两张数据表评论表和文章表: tpk_comment , tpk_article .评论和文章的对应关系为 ...

随机推荐

  1. react css module

    <div className={style['content-warp']}></div> <div className={style.search}></d ...

  2. python3 - 多线程和协程速率测试对比

    多线程和协程都属于IO密集型,我通过以下用例测试多线程和协程的实际速率对比. 实例:通过socket客户端以多线程并发模式请求不同服务器端(这里服务器端分2种写法:第一种服务器通过协程实现,第二种服务 ...

  3. cmake使用(CMakeList.txt)

    set(CMAKE_INCLUDE_CURRENT_DIR ON)#CMAKE_INCLUDE_CURRENT_DIR equal to INCLUDE_DIRECTORY(${CMAKE_CURRE ...

  4. luogu P1310 表达式的值

    题目描述 对于1 位二进制变量定义两种运算: 运算的优先级是: 先计算括号内的,再计算括号外的. “× ”运算优先于“⊕”运算,即计算表达式时,先计算× 运算,再计算⊕运算.例如:计算表达式A⊕B × ...

  5. java反射原理运用

    1.首先用Java反射机制的要做到的一个目的:我们都知道通过得到一个对象中的指定方法或者属性等,基于这个原理我们来做一个 通用的功能,让客户端可以通过传入的对象和一个标识去调用这个对象里自己想要的方法 ...

  6. Codeforces Round #295 (Div. 1) C. Pluses everywhere

    昨天ZZD大神邀请我做一道题,说这题很有趣啊. 哇,然后我被虐了. Orz ZZD 题目大意: 你有一个长度为n的'0-9'串,你要在其中加入k个'+'号,每种方案就会形成一个算式,算式算出来的值记做 ...

  7. HTML5 一些有用的 APIs

    Animation Timing Window.requestAnimationFrame(callback): 告诉浏览器希望执行一个动画,让浏览器在下一个动画帧安排一次网页重绘(类似于 setTi ...

  8. 集合对象(NSSet,NSMutableSet,NSIndexSet)

    NSArray:有序的集合,NSSet:无序的集合,散列存储. 但是NSSet保证数据的唯一性.当插入相同的数据时,不会有任何效果.从内部实现来说是hash表.NSMutableSet是NSSet的子 ...

  9. SharePreferences使用

    获取数据: @SuppressLint("InlinedApi") private String getFromSharePreference(String key) { if ( ...

  10. 开源软件许可认证:open softwae license

    OSIA认证的开放源代码软件的软件许可证有如下21种: 1.The GNU General Public License (GPL) 2.The GNU Library or "Lesser ...