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 文件,基本配 ...
随机推荐
- C#文件或文件夹压缩和解压方法(通过ICSharpCode.SharpZipLib.dll)
我在网上收集一下文件的压缩和解压的方法,是通过ICSharpCode.SharpZipLib.dll 来实现的 一.介绍的目录 第一步:下载压缩和解压的 ICSharpCode.SharpZipLib ...
- 让服务器iis支持.apk文件下载的设置方法
随着智能手机的普及,越来越多的人使用手机上网,很多网站也应手机上网的需要推出了网站客户端,.apk文件就是安卓(Android)的应用程序后缀名,默认情况下,使用IIS作为Web服务器的无法下载此文件 ...
- 一个struts2登录bug的解决
点登录的时候,在url后面总会加上一个;jsessionid=xxx 使找不到页面 的404 Bug ,百思不得其解,最后终于找到解决方案,实验最终成功解决了这个bug,下面是解决方案 1,增加依赖 ...
- Hadoop之HDFS文件读写过程
一.HDFS读过程 1.1 HDFS API 读文件 Configuration conf = new Configuration(); FileSystem fs = FileSystem.get( ...
- stm32 usart 异步传输示例
STM32F103xE的USART异步数据传输示例 USART全称Universal Synchronous/Asynchronous Receiver/Transmitter,是一种可以进行同步/异 ...
- C# new关键字
在 C# 中,new 关键字可用作运算符.修饰符或约束 1.new 运算符:用于创建对象和调用构造函数.2.new 修饰符:用作修饰符时,new 关键字可以显式隐藏从基类继承的成员.3.new 约束: ...
- 【JQ基础】
$(document).ready(function(){});//用来在DOM加载完成之后执行一系列预先定义好的函数. $(function(){});//$(document).ready(fun ...
- windows如何远程桌面mac
mac远程windows系统比较容易,但是windows远程mac就相对复杂一点,需要借助第三方工具来实现. 下面给出简要的远程步骤: 1.登录mac,点击苹果图标,然后单击[系统偏好设置...].如 ...
- 超简洁的CSS下拉菜单
效果体验:http://hovertree.com/texiao/css/3.htm HTML文件代码: <!DOCTYPE html> <html xmlns="http ...
- github的pull request是指什么意思?有什么用处
github的pull request是指什么意思? 来看看某乎某位阿牛的理解,多么的简单粗暴! 我尝试用类比的方法来解释一下 pull reqeust.想想我们中学考试,老师改卷的场景吧.你做的试卷 ...