Node.js-MongoDB数据库

本文介绍了MongoDB的基础概念、安装配置及基本操作命令。包括数据库、集合、文档的概念,MongoDB的安装步骤、环境变量配置、服务启动与关闭,以及如何进行数据库的创建、删除、查询等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MongoDB(文档型数据库)
关系型数据库和非关系型数据库

关系型数据库

  • 关系型数据库都需要通过 sql 语言来操作,表与表之间可以建立联系

  • 关系型数据库在操作前需要设计表结构

  • 数据表支持约束…

非关系型数据库

  • 非关系型数据库没有表的概念,严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。

  • 格式灵活,存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。

MongoDB 基本概念
  • 可以有多个数据库

  • 一个数据库可以有多个集合(类似于表)

  • 一个集合可以有多个文档(类似于表记录)

  • 文档结构灵活,没有限制

MongoDB 的安装和配置
  1. 下载安装包,目前最新版为解压版(不会配置,找百度)

    以 3.4.10 为例(安装版)

  2. 基本上一路 next,可以自定义安装位置。

  3. 配置环境变量,将安装路径(以实际情况而定):D:\Develop\MongoDB\Server\3.4\bin 添加到 Path 环境变量中。

  4. 打开命令行窗口输入 mongod --version 命令,显示版本信息则表示配置成功。

MongoDB 的启动和关闭

启动:

  • mongodb 默认使用执行 mongod 命令所处盘符根目录下的 /data/db/ 作为自己的数据存储目录。

    所以在执行 mongod 命令之前需要手动创建一个 /data/db 目录。

  • 创建之后执行 mongod 命令启动 MongoDB(在创建目录的盘符下执行)。

  • 存储目录也可更改

    # <newPath> 新的目录
    mongod --dbpath=<newPath>
    

关闭:

  • 在开启服务的命令窗口按 ctrl+c 即可;或者直接关闭命令窗口。
MongoDB 的连接和退出连接

连接:

  • 再打开一个命令窗口(之前启动服务的窗口不能关闭),输入 mongo 命令,该命令会默认连接本机的 MongoDB 服务。

退出连接:

  • 在连接的命令窗口输入 exit 命令即可退出连接。
MongoDB 的基本命令

显示所有数据库(显示系统数据库和插入数据的数据库)

  • show dbs

查看当前操作的数据库(未使用时,默认是 test)

  • db

使用指定的数据库(如果数据库不存在则会创建)

  • use DatabaseName

    DatabaseName 数据库名称

删除数据库(删除当前使用的数据库)

  • db.dropDatabase()

创建集合

  • db.createCollection(name, option)

    name 集合名称;potion 可选,设置集合大小、索引等

删除集合

  • db.CollectionName.drop()

    CollectionName 集合名称

向集合中插入数据(插入文档)

  • db.CollectionName.insertOne(document) 插入单个文档

    // 向集合中插入一条文档
    db.students.insertOne({"name":"小小"})
    
  • db.CollectionName.insertMany(documents) 插入多个文档

    db.students.insertMany([{"name": "大熊"},{"name": "莲妹"}, {"name": "香香"}])
    
  • db.CollectionName.insert() 插入一个或多个文档

    // 插入单个
    db.students.insert({"name": "小小"})
    // 插入多个
    db.students.insert([{"name": "大熊"},{"name": "莲妹"}, {"name": "香香"}])
    

删除文档

  • db.CollectionName.deleteOne(filter) 删除单个匹配文档

    filter 过滤条件,值为一个对象

    db.students.deleteOne({name: "大熊"})
    
  • db.CollectionName.deleteMany(filter) 删除所有匹配的文档

    db.students.deleteMany({name: "小熊"})
    

查询集合中的数据(查询文档)

  • db.CollectionName.find(query, projection)

    query 可选,使用查询操作符指定查询条件;projection :可选,使用投影操作符指定返回的键

向数据库中导入数据文件

  • mongoimport -d DatabaseName -c CollectionName --file path

    DatabaseName 数据库名称;CollectionName 数据库中需要导入数据的集合的名称;path 要导入的数据文件的路径

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值