1.简介:

MongoDB是由c++语言编写的,基于分布式文件存储的开源数据库系统。MongoDB将数据存储为一个文档,数据结构有键-值对,类似于JSON对象。

MongoDB其中的一些概念如下:

MongoDB中表相当于一个集合,行相当于一个文档,列相当于一个域。其中MongoDB自动将_id字段设置为主键。

2.安装与连接 

(1)安装官网下载

(2)启动服务:

这里的路径可以自己设置,这是存储数据库数据的地方

启动成功后,流浪器访问localhost:27017,将会出现以下画面,27017为默认端口

(3) 连接

3.一些基础操作

(1)show dbs

可以显示所有数据库

(2)db

显示当前数据库对象

(3)use <db>

使用指定的数据库

(4)show collections

查看当前表中所有集合

4.MongoDB数据类型

5.MongoDB创建数据库

use DATABASE_NAME

当DATABASE_NAME不存在时会创建数据库,如果其存在则切换到指定数据库。

注意:当你新建的数据库内没有插入数据时,show dbs不会显示出你刚创建的数据库;

6.删除数据库

db.dropDatabase()

删除当前数据库。

7.创建集合:

集合相当于关系型数据库中表(table)的概念

db.createColection(name,options)
  • name:要创建集合的名称
  • options:可选的参数,可以是如下:

下面是一个例子:

创建一个固定集合my,整个集合空间的大小为6142800KB,文档中最大个数为10000个。

db.createCollection("my", { capped : true, autoIndexId : true, size :
6142800, max : 10000 } )

注意:当你在my集合中插入文档时,先检查是否满足size条件,再查看max条件,只有在两个都满足的前提下你才能插入文档

8.删除集合

db.collection.drop()

collection:指要删除的集合名称

9.插入文档

MongoDB使用insert()或者save()方法向集合中插入文档

db.COLLECTION_NAME.insert(document)

例子:

COLECTION_NAME是集合的名称,如果数据库中不存在该集合,那么MongoDB会自动创建该集合。

10.更新文档:

(1)update()方法用于更新已存在的文档。

db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
  • query:update的查询条件,类似mysql的where条件语句
  • update:update的对象和一些更新的操作符,可以理解为sql中set语句
  • upsert:可选,表示如果不存在update的文档,是否插入新的文档,默认为false
  • multi:可选,默认为false,表示只更新找到的第一条记录,如果为true则表示更新所有满足条件的文档
  • writeConcern:可选,表示抛出异常的级别

实例:

(2)save()方法通过传入的文档替换已有的文档,语法格式为:

db.collection.save(
<document>,
{
writeConcern: <document>
}
)

document:新文档的数据.

其他实例:

11.删除文档

db.collection.remove(
<query>,
{
justOne: <boolean>,
writeConcern: <document>
}
)

实例:

 12.查询文档

db.collection.find(query,projection)

query:可选,使用查询操作符指定查询的条件

projection:可选,使用投影操作符指定返回的键。查询是返回文档中所有键值

以易读的方式读取数据

db.collection.find().pretty()

看一下哪易读了:

一些常用的操作:

OR条件     {$or:[{key1:value1},   {key2:value2} ]}

学习笔记,参考http://www.runoob.com/mongodb

mongoDB使用小记的更多相关文章

  1. mongodb入门学习小记

    Mongodb 简单入门(个人学习小记) 1.安装并注册成服务:(示例) E:\DevTools\mongodb3.2.6\bin>mongod.exe --bind_ip 127.0.0.1 ...

  2. MongoDB 小记

    之前本人说过一款非关系型数据库的代表 Redis 的 < Redis 小记 >文章,觉得意犹未尽,今天就来介绍一款数据库 MongoDB ,先来看一下 MongoDB是一款基于分布式文件存 ...

  3. MongoDB小记

    mongodb的一个简单使用. package com.chuntent.mongo; import java.util.Map; import java.util.Map.Entry; import ...

  4. Java程序中与MongoDB建立连接~小记

    1.Mongo和MongoClient的关系 MongoClient继承自Mongo,使用Mongo也可建立连接,但是需要使用与Mongo适应的MongoOptions,MongoURI等类型. 2. ...

  5. 小记------mongodb数据库如何进行模糊查询

    // 模糊匹配createTime   是以 2019-07-23 开头 db.getCollection('driver_online_record').find({"createTime ...

  6. linux 下cmake 编译 ,调用,调试 poco 1.6.0 小记

    上篇文章 小记了: 关于 Poco::TCPServer框架 (windows 下使用的是 select模型) 学习笔记. http://www.cnblogs.com/bleachli/p/4352 ...

  7. MongoDB学习记录

    一.操作符 "$lt" :"<""$lte" :"<=""$gt" :"> ...

  8. Java JPA小记

    什么是JPA JPA之于ORM(持久层框架,如MyBatis.Hibernate等)正如JDBC之于数据库驱动. JDBC是Java语言定义的一套标准,规范了客户端程序访问关系数据库(如MySQL.O ...

  9. [转帖]「日常小记」linux中强大且常用命令:find、grep

    「日常小记」linux中强大且常用命令:find.grep https://zhuanlan.zhihu.com/p/74379265 在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍 ...

随机推荐

  1. [SoapUI] JsonPath is to JSON what XPath is to XML

    1.通过JsonUtil验证Json的有效性 2.两种方式通过JPath读取Json的内容

  2. Native2Ascii文件转换 -- 待完善

    摘自:https://www.oschina.net/code/snippet_87799_1612 Native2Ascii文件转换 -- 待完善 package com.xxx.xxx.Util; ...

  3. HUST软件测试1504班: 第0周作业成绩

    说明 本次公布的成绩包含三次作业的结果: 毕博平台课前测试题 第0周作业1:开设博客 第0周作业2:博客阅读和思考 如果同学对作业结果存在异议,可以: 在线平台的第一周在线答疑中创建话题申诉. 或直接 ...

  4. [GO]接口的嵌用继承

    package main import "fmt" type Humaner interface { SayHi() } type Personer interface { Hum ...

  5. logcat命令详解【一】

    Android日志系统提供了记录和查看系统调试信息的功能.日志都是从各种软件和一些系统的缓冲区中记录下来的,缓冲区可以通过logcat命令来查看和使用. 在使用logcat之前,请确保手机的USB调试 ...

  6. HDU 4756 Install Air Conditioning (MST+树形DP)

    题意:n-1个宿舍,1个供电站,n个位置每两个位置都有边相连,其中有一条边不能连,求n个位置连通的最小花费的最大值. 析:因为要连通,还要权值最小,所以就是MST了,然后就是改变一条边,然后去找出改变 ...

  7. 初涉Runtime (一)

    Objective-C 是一门动态语言,有很多东西都是运行时才确定的. 比如这句代码首先声明testObject是一个NSString,然后创建了一个NSData对象,并且将这个对象的内存地址保存在t ...

  8. Atcoder 2159 連結 / Connectivity(并查集+map乱搞)

    問題文N 個の都市があり.K 本の道路と L 本の鉄道が都市の間に伸びています. i 番目の道路は pi 番目と qi 番目の都市を双方向に結び. i 番目の鉄道は ri 番目と si 番目の都市を双 ...

  9. nginx中级应用-续

    1.server下配置的每个location,都需要有自己的一套代理配置 即要么加入: root  某个目录 要么加入 proxy_pass 某个地址;  proxy_redirect off; # ...

  10. 使用 FireMonkey 构建优秀专业 Android 应用的10点提示

    原文链接:http://www.firemonkeyx.com/ten-tips-for-building-stunning-professional-android-apps-with-firemo ...