美文网首页
谁还不知道mongoose?

谁还不知道mongoose?

作者: learninginto | 来源:发表于2020-02-09 11:03 被阅读0次

    谁还不知道mongoose?

    Mongoose.png

    为了解决编写MongoDB的验证、转换和业务逻辑,mongoose(mongoose官网)应运而生。

    mongoose是在node.js异步环境下对mongodb进行便捷操作的对象模型工具。它是针对mongoDB操作的一个对象模型库,封装了mongoDB对文档的、增删改查等方法

    1. 初始化安装

    npm init -y

    cnpm install mongoose -S

    1. 引入mongoose模块
    const mongoose = require("mongoose")
    
    1. 连接的地址

    相对于MongoDB,这里要在最后加上连接的数据库名。(其实做了MongoDB中两步的操作)

    const url = "mongodb://127.0.0.1:27017/user";
    
    1. 连接
    mongoose.connect(url,(err) => {
        if(err){
            console.log("连接失败");
        }else{
            console.log("连接成功");
        }
    })
    
    1. 增删改查操作

      在操作之前,需要先连接或者创建表

      • 创建表时,要用Schema限制字段
      const Schema = mongoose.Schema;
      var StudentSchema = new Schema({
          name:String,
          age:Number
      })
      const Students = mongoose.model("students",StudentSchema)
      

      注意:

      1. 这里定义的表名,不区分大小写;即使定义为大写,也会转为小写,而一旦数据库中原来创建的表名为大写,在这里要通过Node进行操作时,则会创建一个新表。
      2. 如果表名不是以s结尾,在数据库中会自动加上s

      只有插入信息的时候,需要写构造函数

      var students = new Students({
          name:"lxc",
          age:18
      })
      students.save().then((result) => {
          console.log(result);
      })
      
      Students.update({name:"lxc"},{$set:{age:28}}).then((result) => {
          console.log(result);
      })
      
      Students.find().then((result) => {
       console.log(result);    
      })
      
      Students.remove({name:"lxc"}).then((result) => {
          console.log(result);
      })
      

    相关文章

      网友评论

          本文标题:谁还不知道mongoose?

          本文链接:https://www.haomeiwen.com/subject/esegxhtx.html