Mongoose-开篇

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: Mongoose 概述• Mongoose和MySQL的Sequelize一样, 都是NodeJS中操作数据库的对象模型工具• Mongoose使用面向对象的思想对原生的mongoDB命令进行了封装

Mongoose 概述

  • Mongoose和MySQL的Sequelize一样, 都是NodeJS中操作数据库的对象模型工具
  • Mongoose使用面向对象的思想对原生的mongoDB命令进行了封装


?> 官方文档:


Mongoose 和 MongoDB 映射关系

  • 在Mongoose中JS中的一个模型就对应数据库中的一个集合
  • 在Mongoose中JS中的一个对象就对应集合中的一个文档
  • 在Mongoose中JS中的一个对象的属性就对应文档的一个字段


使用 Mongoose

安装 Mongoose 在安装之前需要一个 NodeJS 的环境自行搭建:

npm install mongoose --save


导入 mongoose:

const mongoose = require('mongoose');


利用mongoose链接MongoDB服务器 (mongodb://MongoDB服务器IP地址:MongoDB服务器端口号/需要打开的数据库名称):

mongoose.connect('mongodb://127.0.0.1:27017/it6666');


监听链接成功还是失败:

const db = mongoose.connection;
db.on('error', (err) => {
    console.log(err, '连接失败');
});
db.once('open', function () {
    console.log('连接成功');
});
db.once('close', function () {
    console.log('断开连接');
});


定义集合中存储数据规则:

const userSchema = new mongoose.Schema({
    name: String,
    age: Number
});


利用规则创建集合:

const User = mongoose.model('User', userSchema);


!> 只要创建好了模型, 那么以后就可以使用模型来操作这个集合


!> mongoose会自动将我们指定的集合名称变成复数(s)


利用集合创建文档:

onst u = new User({name: 'zs', age: 18});


!> 只要创建好了对象, 那么以后就可以使用对象来操作文档


?> 操作文档:

u.save((err, product) => {
    if (!err) {
        console.log('文档保存成功');
        console.log(product);
    }
});


相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
SQL 前端开发 安全
Gin-Vue-Admin 使用 gin+vue 进行极速开发的全栈开发基础平台【gva 第一节】
功能: 1.增加了 pgsql 数据库初始化,用户可选用 pgsql 进行开发。 2.增加了业务数据库功能,用户可通过 yaml 中配置自己的业务数据库,根据 name 获取业务库进行业务操作,实现框架和业务的数据库分离。 3.oss 集成了华为云 oss。 4.前端打包增加了提示内存不足时的一键 node 内存扩容 build 命令。 5.调整了获取用户信息的方法,增加了不鉴权模式下的用户信息获取方式。 6.配置页面调整。 7.取消了自动化代码中数据库类型和 size 的选择模块,防止自动化代码报错。
525 0
QGS
|
6月前
|
前端开发 测试技术
浅学前端数据模型MockJS
浅学前端数据模型MockJS
QGS
61 1
|
前端开发
前端学习笔记202305学习笔记第二十四天-模块之common.js基础概念1
前端学习笔记202305学习笔记第二十四天-模块之common.js基础概念1
71 0
|
SQL 安全 关系型数据库
SQLAlchemy源码阅读-上篇
SQLAlchemy是Python SQL工具箱和ORM框架,它为应用程序开发人员提供了全面而灵活的SQL功能。它提供了一整套企业级持久化方案,旨在高效,高性能地访问数据库,并符合简单的Pythonic哲学。项目代码量比较大,接近200个文件,7万行代码, 我们一起来挑战一下。 作者:游戏不存在 链接:https://juejin.cn/post/6951945198322581518 来源:稀土掘金 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
316 2
SQLAlchemy源码阅读-上篇
|
JSON JavaScript 前端开发
koa框架学习记录(3)
一个前端学习koa的简单记录
|
前端开发
koa框架学习记录(5)
一个前端学习koa的简单记录
|
JavaScript 前端开发 中间件
koa框架学习记录(6)
一个前端学习koa的简单记录
|
前端开发 中间件
koa框架学习记录(4)
一个前端学习koa的简单记录
|
JavaScript 前端开发
koa框架学习记录(1)
一个前端学习koa的简单记录
|
前端开发 JavaScript 中间件
koa框架学习记录(8)
一个前端学习koa的简单记录