MongoDB 4.X CRUD基本操作】的更多相关文章

本文总结了MongoDB 4.X在mongo shell客户端涉及的对文档一些基本的增删改查操作,即CRUD操作.主要结合了自己平时使用MongoDB的操作命令,更详细的命令可以参考官方文档: https://docs.mongodb.com/manual/crud/ . 创建(Create Operations) 创建(Create Operations)也叫插入操作,当集合不存在时,插入操作同时也会创建集合.MongoDB提供以下几种插入文档方法: db.collection.insert(…
ObjectId 基本操作增删改查 增: insert 介绍: mongodb存储的是文档,. 文档是json格式的对象. 语法: db.collectionName.insert(document); 1: 增加单篇文档 db.collectionName.insert({title:’nice day’}); db.person.insert({“name”:”yxl”,”age”:26}) 2: 增加单个文档,并指定_id db.collectionName.insert({_id:8,a…
一.使用前的准备(windows下的安装)  1.下载 目前MongoDB的官网不知道问什么不能进行下载了,但是可以在MongoDB中文论坛进行下载, 地址如下:http://www.mongoing.com/mongodb-downloads 2.安装 我下载的是msi版本的软件,安装过程中选择自定义方式,可以改变安装的位置,我的安装路径如下: 安装完成后会出现如下的文件 3.启动MongoDB 打开cmd,进入安装好的MongoDB的bin目录执行如下命令: 下面的--dbpath 后的参数…
1. MongoDB的安装方法 (1)下载MongoDB 相应的版本: (2)设置数据文件和日志文件的存放目录: (3)启动MongoDB服务: (4)将MongoDB作为服务启动. 2. MongoDB文档基本操作的方法 (1)插入并保存文档: (2)删除文档: (3)修改文档. 一.数据库操作 use database_name,如果数据库不存在将创建一个新的数据库: 否则将返回现有的数据库. db                                              -…
一.简介 在MongoDB建立索引能提高查询效率,只需要扫描索引只存储的这个集合的一小部分,并只把这小部分加载到内存中,效率大大的提高,如果没有建立索引,在查询时,MongoDB必须执行全表扫描,在数据量大时,效率差别就很明显,对于包括一个没有索引的排序操作的查询,服务器必须在返回任何结果之前将所有的文档加载到内存中来进行排序. 索引是特殊的数据结构,索引存储在一个易于遍历读取的数据集合中,索引是对数据库表中一列或多列的值进行排序的一种结构.索引项的排序支持高效的相等匹配和基于范围的查询操作.…
作为一个做底层及后台研发的,最近对NoSQL却产生了浓厚的兴趣,加入了一个DBA群,据说北京排的上号的DBA都在里面,然而里面基本都是Oracle系的,MySQL和MongoDB系的少之又少.学习靠不得别人,要和Oracle大佬们撕比尚需时日. 废话少说,在抱怨关系型数据库的死板及开发效率,力推NoSQL之后,NoSQL的代表之一MongoDB也受过一些质疑,比如<Don't use mongoDB>一文.然而NoSQL的应用却还是没有停下,比如滴滴就是NoSQL.在去IOE的大趋势下,阿里选…
链接到mongo 新建超级用户 上文中我们提到mongo用户库表管理.为了方便我们先新建一个root权限的用户. db.createUser({user:'dbadmin',pwd:'123456', roles:[{role:'userAdminAnyDatabase', db:'admin'}]}) 使用studio-3t链接到mongo 新建爬虫库 打开连接后,在连接上右键,然后Add Database ->输入数据库名称spider001 spider001在数据库上面右键Manage…
前言 本次我们聊一聊Elasticsearch的基本操作CRUD,他跟我们常用的关系型数据库的操作又有什么不一样的地方呢?今天我们就来好好讲解一番. 说明 本次演示用的版本是7.11. 工具可以使用Kibana的控制台,界面美观且有一定的缩进,而且能简化命令行的curl操作,如果对安装有问题的,可以看一下我之前的文章. API约定 关系型数据库用的是SQL进行数据的访问,而Elasticsearch用的是REST进行数据的访问,HTTP的请求头PUT.GET.POST.DELETE正好可以对应C…
http://www.mongodb.org/ Agile and Scalable MongoDB (from "humongous") is an open-source document database, and the leading NoSQL database. Written in C++, MongoDB features: Document-Oriented Storage » JSON-style documents with dynamic schemas of…
插入操作 插入记录 1.插入一条记录 db.testData.insert({num:1,name:'a'}); 结果 WriteResult({ "nInserted" : 1 }) 2.查看插入的记录 db.testData.find(); 插入数组 1.定义数组 var arr = [{num:1,name:'a'},{num:2,name:'b'},{num:3,name:'c'}]; 2.插入记录 db.testData.insert(arr); 结果 nInserted显示…
我下载的是 mongo-2.8.0.jar — Version 2.8.0 打开mongo shell -- 新建数据库test --( use test) 打开eclipse新建工程,把junit,mongo-2.8.0.jar导入. 新建测试类如下: package com.db; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; import org.bson.t…
CRUD操作: 1. 插入操作: 直接使用 insert可执行单个操作,也可以执行批量操作 书上的batchInsert会报错.似乎被废弃了. db.foo.insert({"bar":"bar..."}) db.foo.insert([{"bar":"bar...",({"bar":"bar..."})}]) 2. 删除操作: db.foo.remove({})  //对应上面的操作,…
对Collection的操作 import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.bson.Document; import com.mongodb.Block; import com.mongodb.MongoClient; import com.mongodb.MongoClientURI; import com.mongodb.MongoCredential; im…
一 MongoDB简介 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. MongoDB中的记录是一个文档,它是由字段和值对组成的数据结构.MongoDB文档类似于JSON对象.字段的值可以包括其他文档,数组和文档数组. 二 MongoDB下载安装 2.1 下载地址: https://www.mongodb…
删除记录 概述 在MongoDB中,db.collection.remove()方法用于删除集合中的记录.能够删除全部记录,删除全部符合条件的记录.或者是仅删除一条记录. 删除全部记录 删除一个集合中的全部记录.仅仅要将一个空的查询对象{}传给remove()方法就可以.remove()方法不删除索引.   例:db.testData.remove({});   使用remove()方法删除一个集合中的全部记录.可能比使用drop()方法删除包括索引的整个集合.再重建集合和索引更高效. 删除符合…
添加 下面我们来建立一个test 的集合并写入一些数据.建立两个对象j 和t , 并保存到集合中去.在例子里 “>” 来表示是 shell 输入提示符    > j = { name : "mongo" };    {"name" : "mongo"}    > t = { x : 3 };    { "x" : 3 }    > db.things.save(j);    > db.things…
一.mongoDB与关系型数据库对比 对比项              mongoDB             关系型数据库(oracle.mysql) 表 集合List 二维表table 表的一行数据 文档document 一条记录record 表字段 键key 字段field 字段值 值value 值value 主外键 无 PK.FK 灵活扩展性 极高 差 二.mongoDB基本的Shell命令 1.创建数据库.操作表之前需要先启动mongoDB数据库(既启动服务端): 启动服务: > mo…
Example:   package com.sdfwerwer.test; import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.Mongo;…
运行两步提交 概述 这部分提供了多记录更新或者多记录事务.使用两步提交来完毕多记录写入的模板. 另外.能够扩展此方法来提供rollback-like功能. 背景 MongoDB对于单条记录的操作是原子性的.可是涉及多条记录的操作却不是原子性的. 因为记录可能是相当复杂.而且有内嵌记录,单记录原子性操作提供了实际中经常使用的必要支持. 除了单记录的原子性操作,还有很多情况须要多记录操作事务.当运行一个包括一些列操作的事务时,就有下面要求: 原子性:假设一个操作失败,事务中之前的操作须要回滚到之前的…
改动记录 概述 MongoDB提供了update()方法用于更新记录. 这种方法接受下面參数:     一个更新条件的JSON对象用于匹配记录,一个更新操作JSON对象用于声明更新操作,和一个选项JSON对象     声明查询条件,使用和查询一样的结构和语法.     默认情况下,update()更新单条记录,若要更新多条记录, 请使用multi选项. 更新记录中的指定字段 用于更新某个字段的某个值,MongoDB提供了update操作符.比方$set.     在运行更新操作时,一些操作符回创…
此说明文档针对的community版本是v4.2.0(1)下载下载官网,此时的community版本是v4.2.0https://www.mongodb.com/download-center/community (2)安装选择的Complete安装,都是默认选择. • 默认安装为service,这样不用后续自己配置,安装程序自动配置服务,且开机自动启动. • 默认安装MongoDB Compass桌面管理软件(注意,MongoDB Compass的安装比较费时,可能需要十几分钟的时间等待,可以…
MongoDB 的安装 使用 docker 安装 下载镜像: docker pull mongo:4.4.8(推荐,下载指定版本) docker pull mongo:latest (默认下载最新版本) 查看镜像: docker images 可以看到 mongo 已经下载好了 启动镜像: docker run -d --restart=always -p 27017:27017 --name mymongo -v /data/db:/data/db mongo:4.4.8 -d 后台运行 --…
枚举遍历指针 概述 前面已经讲过,db.collection.find()假设没有指定给一个var声明的变量.将自己主动枚举前20条记录. 手动枚举指针 在mongo控制台中.将查询赋给一个var声明的变量,让其不自己主动枚举. var cur = db.testData.find(); 然后每次调用这个指针.将自己主动遍历20条 cur; 也能够使用指针的next()方法来获取下一条记录 var cur = db.testData.find(); while(cur.hasNext()) {…
数据库切换 查看当前数据库名称 db 查看所有数据库名称 列出所有在物理上存在的数据库 show dbs 切换数据库 如果数据库不存在,则指向数据库,但不创建,直到插入数据或创建集合时数据库才被创建 use 数据库名称 默认的数据库为test,如果你没有创建新的数据库,集合将存放在test数据库中 数据库删除 删除当前指向的数据库 如果数据库不存在,则什么也不做 db.dropDatabase() 集合创建 语法 db.createCollection(name, options) name是要…
1.数据插入db.集合名.insert() 操作 > use hk switched to db hk > show collections > db.info.insert({"url":"www.lepu.cn"}) WriteResult({ }) > db.info.find() { "_id" : ObjectId("592bd4324c964b7784cca90f"), "url&…
1.显示所有的数据库 show dbs   2.切换数据库(如果没有数据库,即是创建数据库) use 数据库名称   3.显示所有的表 show tables   4.查看数据库里的表 show collections   5.插入数据 db.数据库的名称_collection.insert(json数据库格式)   6.删除数据库 db.dropDatabase()   7.删除表 db.数据库名称_collection.drop()   eg: db.imooc_collection.dro…
本文转载自 https://my.oschina.net/kakakaka/blog/347954 首先,下载mongdb对JAVA的支持,点击这里下载驱动包,这里博主下载的是2.10.1版. mongdb版本为2.4.9 在项目中导入该驱动包. 打开shell,在终端输入mongo,显示如下 只有默认的三个数据库. 新建一个java project 代码如下, 1.操控mongdb连接,使用MongoOptions来设置一些参数. package Util; import java.net.U…
[原文地址]https://docs.mongodb.com/manual/ CRUD操作(四) 1 查询方案(Query Plans) MongoDB 查询优化程序处理查询并且针对给定可利用的索引选择最有效的查询方案.然后每次执行查询时,查询系统使用此查询方案. 查询优化程序仅缓存可能有多种切实可行的方案的查询计划. 对于每一个查询,查询规划者在查询方案高速缓存中搜索适合查询形式的查询方案.如果没有匹配的查询方案,查询规划者生成几个备选方案并在一个实验周期内做出评估.查询规划者选择获胜的方案,…
[原文地址]https://docs.mongodb.com/manual/ CRUD操作(三) 主要内容: 原子性和事务(Atomicity and Transactions),读隔离.一致性和新近性,分布式查询(Distributed Queries),分布式写操作,模拟两阶段任务提交,在副本集中执行配额读取 1 原子性和事务(Atomicity and Transactions) 在MongoDB中,写操作在单文档级别具有原子性,即使修改一个文档中的多个嵌入式文档也是如此. 当一个写操作修…
MongoDB 是一款NoSql数据库,没有固定的模式,即同一个集合中的不同文档结构可以不同,如:第一条记录{name:”xiaoming”},第二条记录:{name:”xiaoli”,age:15},这在关系型数据库中是无法实现的.对于MongoDB,其中:collections即集合相当于关系型数据库的表,document文档相当于关系型数据库中的行.因此也就是说,MongoDB中的表中存储的数据可以不规定类型等.下面看一下MongoDB自带shell客户端的一些基本操作. 先来看一下,如何…