mongoDB非关系型数据库学习记录

一、简介

1.1Mongodb是什么

MongoDB是一个基于分布式文件存储的数据库,官方地址https://www.mongodb.com/

1.2数据库是什么

数据库(DataBase)是按照数据结构来组织、存储和管理数据的应用程序

1.3数据库的作用

数据库的主要作用就是管理数据,对数据进行增©、删(d)、改(u)、查®

1.4数据库管理数据的特点

相比于纯文件管理数据,数据库管理数据有如下特点:

  1. 速度更快
  2. 扩展性更强
  3. 安全性更强

二、核心概念

Mongodb中有三个重要概念需要掌握

  • 数据库(database)
  • 集合(collection)数据库是一个数据仓库,数据库服务下可以创建很多数据库,数据库中可以存放很多集合,集合类似于JS中的数组,在集合中可以存放很多文档
  • 文档(document)文档是数据库中的最小单位,类似于JS中的对象

    大家可以通过JSON文件来理解Mongodb中的概念
  • 一个JSON文件好比是一个**数据库,**一个Mongodb服务下可以有N个数据库
  • JSON文件中的一级属性 的数组值好比是集合
  • 数组中的对象好比是文档
  • 对象中的属性有时也称之为字段

mongoDB的下载安装与启动

下载地址:https://www.mongodb.com/try/download/community

建议选择zip类型,通用性更强

配置步骤如下:

1>将压缩包移动到C:\ProgramFiles下,然后解压

2>创建C:\data\db目录,mongodb会将数据默认保存在这个文件夹

3>以mongodb中bin目录作为工作目录,启动命令行

运行命令mongod

看到最后的waiting for connections则表明服务已经启动成功

注意:

  • 为了方便后续方便使用mongod命令,可以将bin目录配置到环境变量Path中
  • 千万不要选中服务端窗口的内容,选中会停止服务,可以敲回车耳汉消选中

数据库与集合命令

4.1数据库命令

  1. 显示所有的数据库
shell 复制代码
show dbs
  1. 切换到指定的数据库,如果数据库不存在会自动创建数据库
shell 复制代码
use 数据库名
  1. 显示当前所在的数据库
shell 复制代码
db
  1. 删除当前数据库
shell 复制代码
use 库名
db.dropDatabase()

4.2集合命令

  1. 创建集合
shell 复制代码
db.createCollection('集合名称')
  1. 显示当前数据库中的所有集合
shell 复制代码
show collections
  1. 删除某个集合
shell 复制代码
db.集合名.drop()
  1. 重命名集合
shell 复制代码
db.集合名.renameCollection('newName')

4.3文档命令

  1. 插入文档
shell 复制代码
db.集合名.insert(文档对象);
  1. 查询文档
shell 复制代码
db.集合名.find(查询条件)

_id是mongodb自动生成的唯一编号,用来唯一标识文档 3. 更新文档

shell 复制代码
db.集合名.update(查询条件,新的文档)
db.集合名.update({name:'张三'},{$set:{age:19}})
  1. 删除文档
shell 复制代码
db.集合名.remove(查询条件)

4.4 应用场景

4.4.1新增

用户注册

发布视频

发布商品

发朋友圈

发评论

发微博

发弹幕

4.4.2删除

删除评论

删除商品

删除文章

删除视频

删除微博

4.4.3更新

更新个人信息

修改商品价格

修改文章内容

4.4.4查询

商品列表

视频列表

朋友圈列表

微博列表

搜索功能

相关推荐
科技林总1 天前
【系统分析师】2.5 工程伦理
学习
_李小白1 天前
【AlohaMini学习笔记】第二天:初见LeRobot
笔记·学习
我命由我123451 天前
Android Studio - Android Studio 去除 import 的未使用的类
android·java·ide·学习·java-ee·android studio·学习方法
进阶小白猿1 天前
Java技术八股学习Day13
java·jvm·学习
行业探路者1 天前
二维码制作工具使用指南:如何利用电脑摄像头轻松扫描和生成图片二维码
大数据·人工智能·学习·产品运营·软件工程
坏柠1 天前
从点亮一颗 LED 开始:ESP32-S3 GPIO 输出的正确学习方式
学习
如果你想拥有什么先让自己配得上拥有1 天前
三阶幻方了解-七年级上册
学习·总结
木木木一1 天前
Rust学习记录--C8 常用的集合
开发语言·学习·rust
星火开发设计1 天前
Python数列表完全指南:从基础到实战
开发语言·python·学习·list·编程·知识·期末考试
Dontla1 天前
IndexedDB(浏览器原生NoSQL非关系型数据库)浏览器数据库、chrome数据库、idb工具库
数据库·chrome·nosql