码迷,mamicode.com
首页 > 数据库 > 详细

MongoDB

时间:2018-09-12 21:43:52      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:sql语句   legend   row   学习   计算   两种方法   cti   高性能   oldboy   

 参考博客:https://www.cnblogs.com/xiao987334176/articles/9635269.html

一、MongoDB初识

什么是MongoDB

MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

官方给出了以上的解释,那么综上所述,马德 F U C K ! 有效信息太少了(完全没用)

那么让我来用人类的语言讲述一下MongoDB吧

 

它和我们使用的关系型数据库最大的区别就是约束性,可以说文件型数据库几乎不存在约束性,理论上没有主外键约束,没有存储的数据类型约束等等

关系型数据库中有一个 "表" 的概念,有 "字段" 的概念,有 "数据条目" 的概念

MongoDB中也同样有以上的概念,但是名称发生了一些变化,严格意义上来说,两者的概念即为相似,但又有些出入,不过无所谓,我们就当是以上概念就好啦

 

光说的话,还是有点儿模糊,就让我们来做一个小例子,进行一个对比吧

下面我们做一张表:

 

技术分享图片

 

这是我们用关系型数据库做的一张很简单的User表对吧

接下来我们再看一下MongoDB的数据结构:

 

User = [{
    "name": "武大郎",
    "age": 18,
    "gender": ""
}, {
    "name": "孙悟空",
    "age": 100000,
    "gender": ""
}, {
    "name": "蔡文姬",
    "age": 16,
    "gender": ""
}]

这......这特么不就是个列表,里面放着三个字典吗?你说的对,如果你理解成了列表和字典,那么证明了你只会Python,在其他语言中它又是别的类型了,我们把这种类型的玩意儿,叫做:Json

这么说,可能还不太明白。看下面的表

MySQL MongoDB
DB DB
Table Colletions
字段 Field
row Documents

 

MongoDB安装

 

你必须得先安装上数据库才能继续装X

关于MongoDB的安装,真的没有难度,真的真的没有难度,来跟着DragonFire一步一步操作,带你Legendary

首先分享给你一个MongoDB 3.4的msi安装包 点击这里可以下载哦(如果不能下载证明我还没搞定分享msi,自己下载一个吧)

技术分享图片

选择默认安装/选择安装

技术分享图片

选择 安装

技术分享图片

安装完成之后,开始进入配置环节,首先我们要进入目录:

"C:\Program Files\MongoDB\Server\3.4\bin"

技术分享图片

带着你配置环境变量,让X装的更加自然更加美:

技术分享图片

之后的操作,windows 7 与 windows 10 不太一样,大同小异啦

 

 

技术分享图片

windows 10 一路到底的"确定"

windows 7 在这里需要注意的是,Path路径移动到最后,输入:"  ;C:\Program Files\MongoDB\Server\3.4\bin  " 一定要带上 "  ;  " 哦

因为没有找到windows 7 操作系统的计算机,所以这里只能给windows 7 的同学说声抱歉了

OK!到了这里我们基本已经完成了部分操作了

我们来试一下成果吧

打开cmd窗口进行一次ZB的操作吧  

技术分享图片

好了目录已经有了,再次ZB试一下

 

技术分享图片

好了开启成功了

那么服务开启了,客户端怎么去连接呢,这时我们需要另一个cmd窗口开启mongo的客户端

 

技术分享图片

 

到此,我们成功的完成了,服务端的部署开启,还有客户端的链接,如果你还想继续往下学习的话,我给你一句金玉良言

 

千万别把这两个cmd窗口关了,不然你还得重新打开一次,哈哈哈哈哈哈哈哈!!!!

 

本文参考链接:

https://www.cnblogs.com/DragonFire/p/9135630.html

 

 

 

二、增删改查操作

本章我们来学习一下关于 MongoDB的增删改查

MongoDB根本不存在SQL语句,操作它,需要使用ORM语法

 

创建数据库   

这里和一般的关系型数据库一样,都要先建立一个自己的数据库空间

技术分享图片

嗯嗯嗯嗯,我感受到了你内心的惊呼,瞅瞅你们这些没见过世面的样子

是的,MongoDB设计的比较随意,没有就认为你是在创建,use LuffyCity_Com是不存在的,所以MongoDB就认为你是要创建并使用

这个概念一定要记清楚哦,MongoDB中如果你使用了不存在的对象,那么就等于你在创建这个对象哦

使用了不存在的对象,就代表创建对象,我们使用这一谬论创建一张表(Collection)试试

 

看来真的不是谬论,真的成功的创建了一个Oldboy的Collection

那么接下来就是在表(Collection)中添加一条数据了,怎么添加呢?

 

插入数据

insert(不推荐)

插入一条或者多条数据,需要带有允许插入多条的参数,这个方法目前官方已经不推荐喽

db.Oldboy.insert({"name":"DragonFire","age":20})

效果如下:

 

> db.Oldboy.insert({"name":"DragonFire","age":20})
WriteResult({ "nInserted" : 1 })

insertOne

插入一条数据,官方推荐

db.Oldboy.insertOne({"name":"WuSir","age":20})

效果如下:

> db.Oldboy.insertOne({"name":"WuSir","age":20})
{
        "acknowledged" : true,
        "insertedId" : ObjectId("5b98d462430c27444ccdd644")
}

我们可以看出来两种方法的返回值截然不同对吧

 

insertMany

 

MongoDB

标签:sql语句   legend   row   学习   计算   两种方法   cti   高性能   oldboy   

原文地址:https://www.cnblogs.com/mengbin0546/p/9637486.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!