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数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 在Ubuntu系统上安装Ghost博客平台的教程

    在Ubuntu系统上安装Ghost博客平台的教程

    这篇文章主要介绍了在Ubuntu系统上安装Ghost博客平台的教程,Ghost博客平台以Node.js写成,需要的朋友可以参考下
    2015-06-06
  • 基于node的cli工具开发使用详解

    基于node的cli工具开发使用详解

    这篇文章主要为大家介绍了基于node的cli工具开发使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • 浅析node应用的timing-attack安全漏洞

    浅析node应用的timing-attack安全漏洞

    本篇文章给大家通过原理的原因分析了node应用的timing-attack安全漏洞问题,有兴趣的朋友阅读参考下。
    2018-02-02
  • Node.js 全局变量无法挂载问题解决分析

    Node.js 全局变量无法挂载问题解决分析

    这篇文章主要为大家介绍了Node.js 全局变量无法挂载问题解决分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • Nodejs处理异常操作示例

    Nodejs处理异常操作示例

    这篇文章主要介绍了Nodejs处理异常操作,结合实例形式分析了nodejs针对异常的捕获与处理相关操作技巧,需要的朋友可以参考下
    2018-12-12
  • Nodejs中 npm常用命令详解

    Nodejs中 npm常用命令详解

    npm是一个node包管理和分发工具,已经成为了非官方的发布node模块(包)的标准。接下来通过本文给大家介绍nodejs中 npm常用命令
    2016-07-07
  • 利用pm2部署多个node.js项目的配置教程

    利用pm2部署多个node.js项目的配置教程

    目前似乎最常见的线上部署nodejs项目的有forever,pm2这两种,而下面这篇文章主要给大家介绍了关于利用pm2部署多个node.js项目的配置教程,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-10-10
  • Node.js 阻塞与非阻塞的实现

    Node.js 阻塞与非阻塞的实现

    本文主要介绍了Node.js中阻塞和非阻塞调用之间的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • Node.js的特点详解

    Node.js的特点详解

    本文主要对Node.js的特点进行详细介绍。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • Node.js中使用mongoskin操作mongoDB实例

    Node.js中使用mongoskin操作mongoDB实例

    这篇文章主要介绍了Node.js中使用mongoskin操作mongoDB实例,Mongous是一个轻量级的nodejs mongodb驱动,需要的朋友可以参考下
    2014-09-09

最新评论