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查询

商品列表

视频列表

朋友圈列表

微博列表

搜索功能

相关推荐
快下雨了L15 分钟前
UE5学习笔记22-武器瞄准和武器自动开火
笔记·学习·ue5
圆头圆脑圆JAVA32 分钟前
Doker学习笔记--黑马
笔记·学习
脚步的影子32 分钟前
2024最新版MySQL详细学习教程
数据库·学习·mysql
马龙强_1 小时前
影刀RPE学习——自动化
学习·自动化
蜡笔新小2 小时前
Stable diffusion 学习过程
人工智能·学习·stable diffusion
艾伦~耶格尔2 小时前
Java 正则表达式详解
java·开发语言·学习·正则表达式
栩日月3 小时前
Linux学习记录十四----------线程的创建和回收
linux·数据结构·学习
滴水成冰-3 小时前
Kotlin-Flow学习笔记
笔记·学习·kotlin
WZF-Sang3 小时前
【MySQL】数据类型【mysql当中各自经典的数据类型的学习和使用】
linux·数据库·sql·学习·mysql·adb
香吧香3 小时前
mongodb 中rs.stauts()命令参数解析
mongodb