MongoDB学习笔记(二:入门环境配置及与关系型数据库区别总结)
一、下载及安装MongoDB
MongoDB下载官网链接:http://www.mongodb.org/downloads
具体安装步骤教程:http://www.shouce.ren/api/view/a/6191(PS:该链接中对MongoDB安装讲解比较详细,通俗易懂。安装教程链接是我从手册网上找到的,下面的总结知识点也是本人从中学习后归纳的一部分,有兴趣的同学不妨收藏一下~)
二、MongoDB可视化工具下载
个人比较习惯在图形化界面进行相关命令操作,所以在安装完MongoDB后,就顺便找了一个MongoDB可视化工具安装使用。MongoDB可视化工具比较多,通过查找网上相关博客和帖子,发现mongobooster这个可视化工具比较受欢迎。
Mongobooster官网下载链接:http://mongobooster.com/downloads(记得当时从官网下载时,网速超慢,下面附一个本人当时下载下来的一个版本的百度云链接)
Mongobooster百度云链接:http://pan.baidu.com/s/1jIhnwVW密码:wgxw
Mongobooster安装后具体界面(PS:和使用mysql相关可视化工具很像,用着很不错):

三、MongoDB基本概念及与关系型数据区别
MongoDB数据库基本概念:
|
关系型数据库 |
MongoDB |
|
database(数据库) |
database(数据库) |
|
table(表) |
collection(集合) |
|
row(行) |
document(文档) |
|
column(列) |
filed(域) |
|
index(索引) |
index(索引) |
|
table joins(表关系) |
无 |
|
primary key(主键) |
自动将_id字段设置为主键 |
MongoDB常用的数据类型:
|
数据类型 |
描述 |
|
String |
字符串,存储数据常用的数据类型,在MongoDB中,UTF-8编码才是合法的 |
|
Integer |
整型数值,用于存储数值,根据你所采用的服务器,可分为32位或64位 |
|
Boolen |
布尔值,用于存储布尔值(真/假) |
|
Double |
双精度浮点值,用于存储浮点值 |
|
Min/Max keys |
将一个值与BSON(二进制的JSON)元素的最低值和最高值相对比 |
|
Arrays |
用于将数组或列表或多个值存储为一个键 |
|
Timestamp |
时间戳,记录文档修改或添加的具体时间 |
|
Object |
用于内嵌文档 |
|
Null |
用于创建空值 |
|
Symbol |
符号。该数据类型基本上等同于字符串类型,但不同的是,它一般用于采用特殊符号类型的语言 |
|
Date |
日期时间,用unix时间格式来存储当前日期或时间。你可以指定自己的日期时间:创建Date对象,传入年月日信息 |
|
Object ID |
对象 ID,用于创建文档的 ID |
|
Binary Data |
二进制数据,用于存储二进制数据 |
|
Code |
代码类型,用于在文档中存储 JavaScript 代码 |
|
Regular expression |
正则表达式类型,用于存储正则表达式 |
MogoDB常用操作命令:
1、创建数据库:use db_name(例如:use library,创建一个数据库名称为library的数据库)
2、查看系统所有数据库:show dbs
3、删除数据库:先使用具体数据库,使用命令use db_name(PS:该命令在有db_name数据库条件下不会创建数据库,没有则重新创建一个db_name数据库),然后使用命令db.dropDatabase()命令
4、插入文档:db.collection_name.insert(document)
5、查看文档:db.collection_name.find()
6、更新文档:db.collection_name.update(<query>,<update>,{upsert:<boolen>,multi:<boolen>,writeConcern:<boolen>})
7、删除文档:db.collection_name.remove(<query>,<justOne>)
MongoDB操作语句与关系型SQL语句比照对应表:
|
操作 |
格式 |
范例 |
RDBMS中的类似语句 |
|
等于 |
{<key>:<value>} |
db.col.find({"by":"菜鸟教程"}).pretty() |
where by = '菜鸟教程' |
|
小于 |
{<key>:{$lt:<value>}} |
db.col.find({"likes":{$lt:50}}).pretty() |
where likes < 50 |
|
小于或等于 |
{<key>:{$lte:<value>}} |
db.col.find({"likes":{$lte:50}}).pretty() |
where likes <= 50 |
|
大于 |
{<key>:{$gt:<value>}} |
db.col.find({"likes":{$gt:50}}).pretty() |
where likes > 50 |
|
大于或等于 |
{<key>:{$gte:<value>}} |
db.col.find({"likes":{$gte:50}}).pretty() |
where likes >= 50 |
|
不等于 |
{<key>:{$ne:<value>}} |
db.col.find({"likes":{$ne:50}}).pretty() |
where likes != 50 |
MongoDB学习笔记(二:入门环境配置及与关系型数据库区别总结)的更多相关文章
- MongoDB学习笔记:快速入门
MongoDB学习笔记:快速入门 一.MongoDB 简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.M ...
- MongoDB学习笔记二- Mongoose
MongoDB学习笔记二 Mongoose Mongoose 简介 之前我们都是通过shell来完成对数据库的各种操作, 在开发中大部分时候我们都需要通过程序来完成对数据库的操作 而Mongoose就 ...
- Django:学习笔记(1)——开发环境配置
Django:学习笔记(1)——开发环境配置 Django的安装与配置 安装Django 首先,我们可以执行python -m django --version命令,查看是否已安装django. 如果 ...
- Nodejs 学习笔记 --- 安装与环境配置
一.安装Node.js步骤 1.下载对应自己系统对应的 Node.js 版本,地址:https://nodejs.org/zh-cn/ 2.选安装目录进行安装 3.环境配置 ...
- MIT JOS学习笔记01:环境配置、Boot Loader(2016.10.22)
未经许可谢绝以任何形式对本文内容进行转载! 一.环境配置 关于MIT课程中使用的JOS的配置教程网上已经有很多了,在这里就不做介绍,个人使用的是Ubuntu 16.04 + qemu.另注,本文章中贴 ...
- Core Java 学习笔记——1.术语/环境配置/Eclipse汉化字体快捷键/API文档
今天起开始学习Java,学习用书为Core Java.之前有过C的经验.准备把自己学习这一本书时的各种想法,不易理解的,重要的都记录下来.希望以后回顾起来能温故知新吧.也希望自己能够坚持把自己学习这本 ...
- MongoDB学习笔记(二) 通过samus驱动实现基本数据操作
传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由(database).集合(collection).文档对象(documen ...
- Mongodb 学习笔记(二) :索引
Mongodb 是基于集合建立索引 (Index),索引的作用类似于传统关系型数据库,目的是为了提高查询速度 . 如果没有建立索引, Mongodb 在读取数据时必须扫描集合中的 所有文档记录. 这 ...
- MongoDB 学习笔记之 入门安装和配置
下载MongoDB: 下载解压即可使用. 为了启动方便和统一管理, 在Mongo根目录下建立/data, /logs, /conf文件夹. 在conf文件夹下建立mongodb.conf 文件,基本配 ...
随机推荐
- webapi文档描述-swagger
最近做的项目使用mvc+webapi,采取前后端分离的方式,后台提供API接口给前端开发人员.这个过程中遇到一个问题后台开发人员怎么提供接口说明文档给前端开发人员,最初打算使用word文档方式进行交流 ...
- angularjs SyntaxError: Unexpected token in JSON at position 0
使用NodeJs读取json格式的文件,转换成对象时报错 :SyntaxError: Unexpected token in JSON at position 0,这个问题查了两三个小时,记录一下解决 ...
- navicat怎么导出和导入数据表
1.选中要导出的数据表,右击,然后点击"导出向导". 2.点击sql脚本文件(*sql)->点击下一步. 3.点击保存位置->下一步->保存 ********** ...
- python征程3.0(python对象)
1.python使用对象模型来存储数据.构造任何类型的值都是一个对象.”尽管python被当成一种面向对象的脚本的编程语言“,但你完全能够写出不使用任何类和实例的脚本. python对象都拥有三个特性 ...
- Redis常用五大数据类型
1.String(字符串) string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 . string类型是Redis最基本的数据类型,一个red ...
- Hibernate总结(一)
Hibernate为了提高性能,提供了缓存与快照机制. 它的缓存分为一级缓存与二级缓存. Hibernate一级缓存:当一个事务中执行一次Sql语句时,就将返回的结果存储在Session中的Map集合 ...
- CSS布局基础——BFC
what's BFC? 第一次看到这个名词,我是拒绝的,css什么时候还有这个东西?于是迫不及待的google了一下,才发现原来它无时无刻不在我们的css当中,只不过它并不是一个属性,不需要我们平常使 ...
- Dev TreeList 总结
1.表格的要求:如果要求有父子节点关系,则必须有ID和ParentID字段,并且父节点ParentID字段必须指向ID字段. 2.Access表格在穿入DATATABLE的时候,要想表现出父子节点关系 ...
- 用VSCode写python的正确姿势(转载)
最近在学习python,之前一直用notepad++作为编辑器,偶然发现了VScode便被它的颜值吸引.用过之后发现它启动快速,插件丰富,下载安装后几乎不用怎么配置就可以直接使用,而且还支持markd ...
- AngularJS 参考手册
AngularJS 参考手册 AngularJS 指令 本教程用到的 AngularJS 指令 : 指令 描述 ng-app 定义应用程序的根元素. ng-bind 绑定 HTML 元素到应用程序数据 ...