Node.js中Mongodb数据库操作方法(最新推荐)

 更新时间:2024年12月03日 11:50:25   作者:项哈哈想做前端  
MongoDB是一种基于分布式文件存储的NoSQL数据库,它允许存储和检索大量结构化数据,MongoDB的核心概念包括数据库、集合和文档,每个集合可以包含多个文档,每个文档是一个键值对的集合,本文介绍Node.js Mongodb数据库操作方法,感兴趣的朋友一起看看吧

MongoDB

MongoDB是什么?

MongoDB是一个基于分布式文件存储的数据库

数据库是什么?

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

数据库作用?

对数据进行增、删、改、查

数据库特点?

  • 速度更快(一些数据库有特定的结构,可以加快访问)
  • 扩展性更强(多数据库节点)
  • 安全姓更强(加密)

为什么选Mongodb?

操作鱼js类似,容易上手,学习成本低

核心概念

Mongodb中有三个重要概念:

  • 速度更快(一些数据库有特定的结构,可以加快访问)
  • 扩展性更强(多数据库节点)
  • 安全姓更强(加密)

理解三者关系

  • db.json可以理解成一个数据库,一个数据库服务下可以创建N个数据库,它们之间不会共享任何数据。
  • json文件中的)属性(accountsusers)所对应的数组信息,就是集合,每个集合存储着一类特定的数据,如accounts 集合存储了与账户相关的记录,而 users 集合则存储了用户的信息。
  • accounts这个集合中有很多对象,每一个对象就是一个文档(每个文档是一个独立的数据单元,包含多个键值对,每个文档中的键值对(例如 “id”: “3-YLju5f3”)是一个字段
{
  "accounts": [
    {
      "id": "3-YLju5f3",
      "title": "买电脑",
      "time": "2023-02-08",
      "type": "-1",
      "account": "5500",
      "remarks": "为了上网课"
    },
    {
      "id": "3-YLju5f4",
      "title": "请女朋友吃饭",
      "time": "2023-02-08",
      "type": "-1",
      "account": "214",
      "remarks": "情人节聚餐"
    },
    {
      "id": "mRQiD4s3K",
      "title": "发工资",
      "time": "2023-02-19",
      "type": "1",
      "account": "4396",
      "remarks": "终于发工资啦!~~"
    }
  ],
  "users":[
    {
      "id": 1,
      "name": "zhangsan",
      "age": 18
    },
    {
      "id": 2,
      "name": "lisi",
      "age": 20
    },
    {
      "id": 3,
      "name": "wangwu",
      "age": 22
    }
  ]
}

Mongodb服务

下载安装

Mongodb下载地址:https://www.mongodb.com/try/download/community,有msi和压缩包可以选,本次下载是采用压缩包形式。

从MongoDB 6.0开始,官方推荐使用MongoDB Shell (mongosh) 作为新的命令行工具,而不是传统的mongo.exe。

Mongosh下载地址:https://www.mongodb.com/try/download/shell?spm=5176.28103460.0.0.297c5d27VMftbK
Mongodb和Mongosh建议都解压在C盘下的Program Files中,并且在C盘文件中,创建data文件夹,再在data文件夹中创建db文件夹作为Mongodb的默认文件夹。

// 启动服务
mongod
// or
mongod --dbpath "C:\data\db
// 启动 MongoDB Shell 并连接到 MongoDB 实例
mongosh

命令行交互

数据库命令

// 显示所有的数据库
show dbs
// 切换指定数据库
use 数据库名
// 删除数据库
use 数据库名
db.dropDatabase()
// 创建集合
db.createCollection('集合名称')
// 显示当前数据库的集合
show collections
// 删除某个集合
db.库名.drop()
// 重命名集合
db.库名.renameCollection('newName')

文档命令

// 插入文档/
db.集合名.insert(文档对象)
// 查询文档
db.集合名.find(查询条件)
// 更新文档
db.集合名.update(查询条件, 新文档)  
db.users.update({name: 'Bob'},{age: 18})
db.集合名.update({name:'Bob'},{$set:{age:19}})
// 删除文档
db.集合名.remove(查询条件)
//  remove() 方法已经被弃用
// 删除第一个匹配的文档
db.collection.deleteOne( { name: '张三' });
// 删除所有匹配的文档
db.collection.deleteMany( { name: '张三' });

到此这篇关于Node.js-Mongodb数据库的文章就介绍到这了,更多相关Node.js Mongodb数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • npm安装淘宝镜像报错问题解决(npm install -g cnpm)

    npm安装淘宝镜像报错问题解决(npm install -g cnpm)

    本文主要介绍了npm安装淘宝镜像报错问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-01-01
  • Node.js 连接 MySql 统计组件属性的使用情况解析

    Node.js 连接 MySql 统计组件属性的使用情况解析

    这篇文章主要为大家介绍了Node.js 连接 MySql 统计组件属性的使用情况解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • npm install安装模块-save和-save-dev命令的区别

    npm install安装模块-save和-save-dev命令的区别

    这篇文章介绍了npm install安装模块-save和-save-dev命令的区别,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • node.js WEB开发中图片验证码的实现方法

    node.js WEB开发中图片验证码的实现方法

    这篇文章主要介绍了node.js WEB开发中图片验证码的实现方法,使用ccap模块实现,需要的朋友可以参考下
    2014-06-06
  • nodejs实现一个word文档解析器思路详解

    nodejs实现一个word文档解析器思路详解

    这篇文章主要介绍了nodejs实现一个word文档解析器的思路详解,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-08-08
  • 详解nodejs addon实现回调函数事件

    详解nodejs addon实现回调函数事件

    本文介绍了一个Node.js addon的实现,通过封装异步回调接口,使用libuv和nan模块处理从C++到JavaScript的回调,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2026-02-02
  • koa2 数据api中间件设计模型的实现方法

    koa2 数据api中间件设计模型的实现方法

    这篇文章主要介绍了koa2 数据api中间件设计模型的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 使用node-cron实现Node.js定时任务方式

    使用node-cron实现Node.js定时任务方式

    node-cron是一个轻量级的Node.js库,用于在指定时间或间隔执行任务,它支持Cron表达式,适用于定时任务场景,文章还介绍了基础用法、高级功能、实际应用示例以及注意事项
    2025-10-10
  • nodejs实现发送邮箱验证码功能

    nodejs实现发送邮箱验证码功能

    这篇文章主要为大家详细介绍了nodejs实现发送邮箱验证码功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • 如何用nodejs给C#写一个数据表的实体类生成工具

    如何用nodejs给C#写一个数据表的实体类生成工具

    这篇文章主要介绍了如何用nodejs给C#写一个数据表的实体类生成工具,对nodejs感兴趣的同学,可以参考下
    2021-05-05

最新评论