node中mongoose使用CRUD示例

在Node中基于Mongoose对MongoDB进行增删查改(CRUD)操作(一) 关键词:mongodb安装 mongoose使用 robomongo mongoose的CRUD操作 mongoose的查询,增加,修改,删除 Node中使用MongoDB非常常见,而Node对MongoDB的操作通常使用Mongoose包。下面介绍在Node中基于Mongoose对MongoDB进行增删查改(CRUD)操作。 阅读详情

var mongoose = require('mongoose')

var Schema = mongoose.Schema

// 1. 连接数据库
// 指定连接的数据库不需要存在,当你插入第一条数据之后就会自动被创建出来
mongoose.connect('mongodb://localhost/itcast')

// 2. 设计文档结构(表结构)
// 字段名称就是表结构中的属性名称
// 约束的目的是为了保证数据的完整性,不要有脏数据
var userSchema = new Schema({
  username: {
    type: String,
    required: true // 必须有
  },
  password: {
    type: String,
    required: true
  },
  email: {
    type: String
  }
})

// 3. 将文档结构发布为模型
//    mongoose.model 方法就是用来将一个架构发布为 model
//    第一个参数:传入一个大写名词单数字符串用来表示你的数据库名称
//                 mongoose 会自动将大写名词的字符串生成 小写复数 的集合名称
//                 例如这里的 User 最终会变为 users 集合名称
//    第二个参数:架构 Schema
//   
//    返回值:模型构造函数
var User = mongoose.model('User', userSchema)


// 4. 当我们有了模型构造函数之后,就可以使用这个构造函数对 users 集合中的数据为所欲为了(增删改查)
// **********************
// #region /新增数据
// **********************
// var admin = new User({
//   username: 'zs',
//   password: '123456',
//   email: 'admin@admin.com'
// })

// admin.save(function (err, ret) {
//   if (err) {
//     console.log('保存失败')
//   } else {
//     console.log('保存成功')
//     console.log(ret)
//   }
// })
// **********************
// #endregion /新增数据
// **********************

 


// **********************
// #region /查询数据
// **********************
// User.find(function (err, ret) {
//   if (err) {
//     console.log('查询失败')
//   } else {
//     console.log(ret)
//   }
// })

// 用户注册
// 1. 判断用户是否存在
//    如果已存在,结束注册
//    如果不存在,注册(保存一条用户信息)
User.find()
  .then(function (data) {
    console.log(data)
  })

// User.findOne({ username: 'aaa' }, function (user) {
//   if (user) {
//     console.log('已存在')
//   } else {
//     new User({
//       username: 'aaa',
//       password: '123',
//       email: 'dsadas'
//     }).save(function () {
      
//     })
//   }
// })

// User.findOne({
//     username: 'aaa'
//   })
//   .then(function (user) {
//     if (user) {
//       // 用户已存在,不能注册
//       console.log('用户已存在')
//     } else {
//       // 用户不存在,可以注册
//       return new User({
//         username: 'aaa',
//         password: '123',
//         email: 'dsadas'
//       }).save()
//     }
//   })
//   .then(function (ret) {
//   })

// User.find({
//   username: 'zs'
// }, function (err, ret) {
//   if (err) {
//     console.log('查询失败')
//   } else {
//     console.log(ret)
//   }
// })

// User.findOne({
//   username: 'zs'
// }, function (err, ret) {
//   if (err) {
//     console.log('查询失败')
//   } else {
//     console.log(ret)
//   }
// })
// **********************
// #endregion /查询数据
// **********************

 

// **********************
// #region /删除数据
// **********************
// User.remove({
//   username: 'zs'
// }, function (err, ret) {
//   if (err) {
//     console.log('删除失败')
//   } else {
//     console.log('删除成功')
//     console.log(ret)
//   }
// })
// **********************
// #endregion /删除数据
// **********************


// **********************
// #region /更新数据
// **********************
// User.findByIdAndUpdate('5a001b23d219eb00c8581184', {
//   password: '123'
// }, function (err, ret) {
//   if (err) {
//     console.log('更新失败')
//   } else {
//     console.log('更新成功')
//   }
// })
// **********************
// #endregion /更新数据
// **********************

 

掌握MongoDB与Mongoose操作:CRUD的实践与应用 本文基于Node.js和Mongoose框架,深入探讨了MongoDB数据库的CRUD操作,包括数据的创建、检索、更新和删除。通过实例代码展示如何利用Mongoose提供的方法高效地与MongoDB数据库交互,为读者提供了一套完整的操作指南。 阅读详情

相关推荐

构建MongoDB应用:从安装到CRUD操作

本章节深入介绍了如何使用MongoDB和Mongoose来构建Node.js应用程序。首先,我们学习了如何安装MongoDB和MongoDB Compass,并通过brew命令行工具配置官方MongoDB公式库。接着,通过Mongoose包来连接Node.js应用程序与MongoDB数据库,定义了数据模型并执行了基本的CRUD操作。此外,我们还通过MongoDB Compass可视化工具直观地查看了数据,并学习了如何在应用中实施用户创建新帖子的功能。

weixin_36197669的博客 848

在nodejs中使用Mongoose和MongoDB实现curd操作

在nodejs中使用Mongoose和MongoDB实现curd操作

qq_42880714的博客 1002

Node.js + Express 实现数据库 CRUD 操作

Node.js是基于Chrome V8引擎的JavaScript运行环境,它允许开发者使用JavaScript编写服务器端的代码。Node.js以其高效的I/O处理能力和非阻塞事件驱动模型,在Web开发领域迅速崛起,尤其适合处理大量并发请求的场景。Express 是一个灵活的 Node.js Web 应用开发框架,它提供了一系列强大的功能,用于开发单页、多页和混合 Web 应用程序。安装 Express 相当简单,首先需要确保你已经安装了 Node.js 和 npm。

weixin_34640289的博客 937

CRUD using Mongoose使用Mongoose进行数据库操作

CRUD using Mongoose使用Mongoose进行数据库操作

m0_61388464的博客 490

Node.js-使用mongoose-crudify快速建立基于MongoDB的API

使用mongoose-crudify快速建立基于MongoDB的API

node-crud:Mongo和Mongoose的节点CRUD操作

节点压缩 Mongo和Mongoose的节点CRUD操作

Mongoose 以及 基本 CRUD

Mongoose 以及 基本 CRUD express 的部分没有放进去,其他的Model层和Controller层都放进去了,项目结构也帖进去了。

GoldenaArcher的博客 630

mongoose简单CRUD

mongoose CRUD demo,if you need,then you can take it!

Mongoose的CRUD方法

mongoose 的CRUD -C creat: 模型对象.create(文档对象,回调函数) 模型对象.create(文档对象) -R Read: 模型对象.find(查询条件,[投影]) 注意⚠️:不管有没有数据,都返回一个数组 模型对象.findOne(查询条件,投影]) 注意⚠️:找到了返回一个对象,没找到返回数组 -U update 模型对象.updateOne(查询条件,要更新的内容,...

qq_41523392的博客 459

在没有信用卡的情况下怎么申请谷歌云(Google Cloud)?

这笔额度足够用来跑一台云服务器、部署小型网站,甚至可以尝试 AI、机器学习等项目。但问题来了——想要拿到这 300 美元,你必须先通过支付方式验证。默认选项就是绑定一张国际信用卡(Visa、MasterCard 之类),然而不少人没有信用卡,或者信用卡无法支持国际支付,结果就卡在注册第一步。很多人会疑惑:既然是送额度,为什么还要绑卡?原因其实很简单:谷歌需要确认你是真实用户,而不是批量注册薅羊毛;通过支付验证,后续如果你用完 300 美元额度,可以直接进行付费使用;

m0_74824483的博客 5651

001-基础入门-Web演示源码&资源&工具箱等

小迪安全2023笔记

wushangyu32335的博客 4257

nodejs 使用mongoose实现crud

index.html <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1">

qq_42039912的博客 305

使用DeepSeek、MCP和AKShare实现智能金融问答系统技术方案

DeepSeek是由深度求索公司开发的大规模语言模型,最新版本DeepSeek-V3采用混合专家(MoE)架构,拥有671B参数,激活37B参数,在多项基准测试中表现优异3。要使用DeepSeek的API服务:访问DeepSeek平台注册账号获取API Key(形如AKShare是基于Python的金融数据接口库,提供股票、基金、期货、宏观经济等领域的海量数据。主要特点包括:免费开源,数据源丰富支持多种数据格式(DataFrame/JSON)持续更新维护安装命令。

Kin 3170

Node+express+mongoose前端实现简单crud接口

准备工作需要安装依赖如下node,express,mongoose,cors,requier-all。通过http//localhost3000/rest/crud/test/list即可获取列表。模型创建(模型文件)models/text.js。重复内容复用方法分页resource.js。通用接口文件route/index.js。重复内容复用方法分页pages.js。Dbserve文件db.js。入口文件index.js。......

我的个人博客 602

从Axure转Figma?这篇编组、缩放、圆角、评论的对比指南帮你无缝切换

本文为资深Axure设计师提供了向Figma无缝迁移的实战指南。文章深度对比了编组、缩放、圆角、评论等核心操作,重点解析了Figma独特的自动布局、组件系统和实时协作功能,旨在帮助用户快速适应新工具,实现设计思维与工作效率的跃迁。

tomato的博客 850

RT-DETR改进策略【卷积层】| CGblock 内容引导网络 利用不同层次信息,提高多类别分类能力 (含二次创新)

本文记录的是利用中的模块优化的目标检测网络模型。通过局部特征提取器、周围环境提取器、联合特征提取器和全局环境提取器来提取局部特征、周围环境和全局环境信息,充分利用不同层次的信息。本文将其应用到中,并进行二次创新,使网络能够更好的处理多类别目标的分类能力。CGNet: A Light-Weight Context Guided Network for Semantic Segmentation1️⃣ 首先通过局部特征提取器floc(∗)floc(*)floc(∗)和周围环境提取器fsur(∗)f_{sur }

Limiiiing的博客 1349

【Node.js】后台管理系统(mongoose增删改查)—— CRUD

后台管理系统(mongoose增删改查)——CRUD 文章目录后台管理系统(mongoose增删改查)——CRUD下载运行MongoDB介绍下载和安装相关教程和链接启动和关闭数据库连接数据库基本命令Mongoose安装在node中使用设计架构MongoDB 数据库的基本概念运用示例查询:删除更新项目前期准备安装配置路由设计路由模块的提取router.js路由模块app.js入口模块 下载运行 仓库...

29的博客 1147

MFC实现图书管理系统(附完整源码)

MFC实现图书管理系统(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 800

node.js开发之使用mongoose实现简单的CRUD

1.创建express4.x项目 2.npm install --save mongoose

lazy的专栏 1473

【技术科普】破解政务跨系统数据壁垒!亘川一网统管平台多源数据同步技术解析

本文解析亘川一网统管平台多源数据同步技术,针对政务跨系统数据壁垒难题,介绍组件的数据采集、校验、审计留痕等核心能力,结合营商环境项目落地案例,对比传统开发模式差异,讲解开源组件的实践价值,为政务项目开发者提供落地参考。

weixin_67440240的博客 634

从零开始学习AI人工智能本体论:概念与实战

本文旨在为初学者提供一个全面而易于理解的人工智能本体论入门指南。我们将覆盖从基本概念到实际应用的全过程,帮助读者理解本体论在AI系统中的核心作用。核心概念与联系:介绍本体论的基本概念和原理核心算法与操作步骤:详细讲解本体构建和推理方法项目实战:通过实际案例展示本体论的应用实际应用场景:探讨本体论在不同领域的应用未来发展趋势:展望本体论在AI领域的前景本体论(Ontology): 在AI中,指对特定领域概念及其关系的明确形式化描述。

AI智能探索者的博客 865

mongoose入门

看一下实际模型定义代码,db/mini/user.js// 定义Schemausername: {// 真实姓名},password: { // 密码});// 定义Model// 暴露接口这是MVC里Model层最长见的代码,没有连接信息,也没有其他额外不相干代码,当你看到user.js你就能理解它在数据库里对应的表结构,以及字段的类型、约束等信息,一般来说,代码写的越干净,可读性会更好一些。

疯狂的毛毛虫-一个java后端爱好者 1331

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

node.js操作MongoDB数据库crud(增删改查),基于mongoose。

1.安装MongoDB数据库 安装数据库教程: https://blog.youkuaiyun.com/qq_27378621/article/details/80933354 2.安装mogoose mongoose是一个方便操作mongodb数据库的插件,让用户更方便操作。 cmd里面执行以下命令 npm install mongoose -g 3.进入正题 连接数据库 var mongoose = ...

weixin_42281924的博客 275

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

从0到1理解NodeAPI架构:Mongoose模型设计与数据库交互

**NodeAPI**是基于**Node.js**和**Express.js**构建的RESTful API服务器,通过**Mongoose.js**实现与**MongoDB**的高效交互。本文将带你深入理解其架构设计,重点解析Mongoose模型设计与数据库交互的核心原理,帮助新手快速掌握Node.js后端开发的关键技术。 ## 📋 架构概览:NodeAPI的核心组件 NodeAPI采用分

gitblog_00161的博客 985

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

上一篇: node与ecma与jquery中的each区别
下一篇: node中操作mysql的CRUD示例代码
qq_34412985
博客等级 码龄11年 143粉丝 983原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值