node-mongoDB-01-基础语法

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: flag不能随便立呀今天搞定这几篇文章

1.前言


flag不能随便立呀

今天搞定这几篇文章


2.mongoose


Mongoose为模型提供了一种直接的,基于scheme结构去定义你的数据模型。它内置数据验证, 查询构建,业务逻辑钩子等,开箱即用

npm i mongoose

安装完直接看README.md来学习也行


3. 基础使用



// 引入
const mongoose = require("mongoose");
//链接数据库
let db = mongoose.connect("mongodb://127.0.0.1:27017/yzs", {
     useNewUrlParser: true,
     useUnifiedTopology: true
});
//监听数据库的链接状态,在链接之后,再做相关的逻辑操作
mongoose.connection.on("open", function () {
  console.log("yzs--数据库链接成功");
})



4. 数据库操作


1.创建模型

类似mySQL初始化表,创建初识的字段,配置信息

类型,默认值,最大值,最小值等


let mySchema = new mongoose.Schema({
          name: { type: String, default: "无名" },
          age: { type: Number, min: 18, default: 20 },
          sex: { type: String, default: "未知" }
     });


2.创建集合/表

第一个参数是集合/表名

第二个参数是表配置信息,就是第一步创建的模型


const MyModel = mongoose.model("Student", mySchema);

3. 插入数据

语法:

model.create("域"",回调函数)


MyModel.create({
          name: "韩非子",
          age: 90,
          sex: "男"
     }, function (err, res) {
               if(!err){
                    console.log("插入数据成功",res);
               }else{
                    console.log("插入数据失败",err);
               }
     });


4.修改数据

语法

modle.update({查询条件},

{$set:{修改的值}},

{multi:true/false},

回调函数);

查询条件可以写多个,

通过可视化工具去看下 数据信息再改也行


MyModel.update({ _id: "60d6dae7486e513474490cb5" }, { $set: { age: 20 } }, function (err, res) {
          if (!err) {
               console.log("修改数据成功", res);
          } else {
               console.log("修改数据失败", err);
          }
     });

默认只会修改匹配的第一条数据

第三个参数 {multi:true},

匹配到多条数据,修改所有匹配数据


MyModel.update({ age: 90 }, { $set: { sex: "不知道" } }, {multi:true},function (err, res) {
          if (!err) {
               console.log("修改数据成功", res);
          } else {
               console.log("修改数据失败", err);
          }
     });



5.查询数据


model.find({查询条件},

{想要显示的字段},

{筛选条件},

回调函数)

1.最简单的 查询

查询所有的  最外层的数组里面是对象


MyModel.find(function (err, res) {
          if (!err) {
               console.log("查询数据成功", res);
          } else {
               console.log("查询数据失败", err);
          }
     })


2. 查询条件


MyModel.find({sex:"女"},function (err, res) {
          if (!err) {
               console.log("查询数据成功", res);
          } else {
               console.log("查询数据失败", err);
          }
     })


3.显示字段

默认会显示所有字段

只写一个参数会当做条件 但是可以写空{}

想要显示的字段,给想要显示的字段复制1,不想显示的不写即可,但是_id如果不想显示,需要主动设置为0


MyModel.find({},{name:1,_id:0},function (err, res) {
          if (!err) {
               console.log("查询数据成功", res);
          } else {
               console.log("查询数据失败", err);
          }
     })


4. 查询字段条件  高级用法

$gt大于

$lt小于

$gte 大于等于

$lte小于等于

$ne不等于


MyModel.find({age:{$gte:70,$lte:60}},{name:1,_id:0},function (err, res) {
          if (!err) {
               console.log("查询数据成功", res);
          } else {
               console.log("查询数据失败", err);
          }
     })

自己修改着条件玩吧


5. 排序
筛选条件

sort 排序 1升序 -1降序 sort:{age:-1}

skip 跳过 {skip:3}

limit限制条数 {limit:3}

优先级

有排序一定是先排序,在做其他限制操作


MyModel.find({},{name:1,age:1,_id:0},{sort:{age:-1},skip:2,limit:3},function (err, res) {
          if (!err) {
               console.log("查询数据成功", res);
          } else {
               console.log("查询数据失败", err);
          }
     })



6. 删除数据


语法

model.remove({查询条件},回调函数)


if (!err) {
          console.log("删除数据成功", res);
     } else {
          console.log("删除数据失败", err);
     }
})


模糊删除很危险


MyModel.remove({ age: 40 }, function (err, res) {
          if (!err) {
               console.log("删除数据成功", res);
          } else {
               console.log("删除数据失败", err);
          }
     })

自己分析这个删除的打印结果吧




相关文章
|
JSON NoSQL MongoDB
MongoDB——基础语法
MongoDB——基础语法
238 0
MongoDB——基础语法
|
存储 JavaScript 前端开发
Node.js的基本语法
【8月更文挑战第12天】Node.js的基本语法
774 1
|
NoSQL JavaScript MongoDB
mongodb语法
mongodb语法
274 0
|
存储 Java API
Node中的AsyncLocalStorage 使用问题之AsyncContext的语法设计和AsyncLocalStorage的问题如何解决
Node中的AsyncLocalStorage 使用问题之AsyncContext的语法设计和AsyncLocalStorage的问题如何解决
107 1
|
JavaScript
细讲Node.js模块化,以及 CommonJS 标准语法导出和导入,详细简单易懂!
细讲Node.js模块化,以及 CommonJS 标准语法导出和导入,详细简单易懂!
|
JavaScript 前端开发
node.js中path模块-路径处理,语法讲解
node.js中path模块-路径处理,语法讲解
|
JavaScript 前端开发
node.js中的fs模块,读写语法讲解
node.js中的fs模块,读写语法讲解
|
存储 NoSQL MongoDB
深入解析 MongoDB 与 Python:基本语法、实用示例与最佳实践
深入解析 MongoDB 与 Python:基本语法、实用示例与最佳实践
269 0
|
SQL NoSQL MongoDB
MongoDB数据库【基本语法内容】2
6.更新文档 update() 方法用于更新已存在的文档。语法格式如下:
325 2
MongoDB数据库【基本语法内容】2
|
存储 JSON NoSQL
MongoDB数据库【基本语法内容】
如果数据库不存在,则创建数据库,否则切换到指定数据库 三部曲,创建数据库,查看当前使用的数据库,查看所有的数据库
253 1
MongoDB数据库【基本语法内容】

推荐镜像

更多