mongoose的介绍,连接数据库

Mongoose 是一个基于 Node.js 的 MongoDB ODM(Object Data Modeling)库,用于在 MongoDB 和 Node.js 应用之间提供结构化的模型层,帮助你更优雅、安全地操作数据库。


🧾 一、Mongoose 简介

  • 📦 功能

    • 定义数据模型(Schema)
    • 提供强大的验证机制
    • 支持中间件(middleware)、钩子(hooks)
    • 提供简洁的增删查改(CRUD)接口
  • 🧠 适用场景

    • 使用 Node.js 开发需要与 MongoDB 交互的项目
    • 希望对 MongoDB 文档结构进行更严格控制时

🔗 二、使用 Mongoose 连接数据库

1. 安装 mongoose

复制代码
npm install mongoose

2. 连接 MongoDB(最基本示例)

复制代码
const mongoose = require('mongoose')

mongoose.connect('mongodb://localhost:27017/myDatabase', {
  useNewUrlParser: true,
  useUnifiedTopology: true,
})
.then(() => {
  console.log('✅ MongoDB 连接成功')
})
.catch((err) => {
  console.error('❌ MongoDB 连接失败:', err)
})

mongodb://localhost:27017/myDatabase 中:

  • localhost 是主机地址
  • 27017 是默认端口
  • myDatabase 是数据库名,不存在时会在插入数据时自动创建

🏗️ 三、Mongoose 基础结构示意

复制代码
// 1. 定义 schema(数据结构)
const userSchema = new mongoose.Schema({
  name: String,
  age: Number,
  email: String
})

// 2. 创建模型(Model)=> 会映射为 MongoDB 中的集合
const User = mongoose.model('User', userSchema)

// 3. 使用模型进行操作
User.create({ name: 'Tom', age: 20, email: 'tom@example.com' })

相关推荐
Ricky_Theseus26 分钟前
SQL Server 的五种约束类型
数据库·sql·oracle
zjshuster28 分钟前
数据库分库分表的方法论与实操
数据库·adb
一只努力的微服务35 分钟前
【Calcite 系列】深入理解 Calcite 的 AggregateValuesRule
大数据·数据库·calcite·优化规则
IT邦德1 小时前
Oracle向量数据库实战
数据库·oracle
2401_873544921 小时前
使用Python处理计算机图形学(PIL/Pillow)
jvm·数据库·python
路由侠内网穿透1 小时前
本地部署开源工作空间工具 AFFiNE 并实现外部访问
运维·服务器·数据库·物联网·开源
njidf1 小时前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
F1FJJ1 小时前
什么是 Shield CLI?视频讲解:一条命令,可浏览器远程访问一切内部服务(RDP/VNC/SSH/数据库等)
运维·网络·数据库·网络协议·ssh
星辰_mya2 小时前
InnoDB的“身体结构”:页、Buffer Pool与Redo Log的底层奥秘
数据库·mysql·spring·面试·系统架构
F1FJJ2 小时前
Shield CLI 命令全解析:15 个命令覆盖所有远程访问场景
网络·数据库·网络协议·容器·开源软件