美文网首页
一,介绍MongDB数据库

一,介绍MongDB数据库

作者: 扶光_ | 来源:发表于2022-08-31 11:16 被阅读0次

    mongDB

    MongDB是一种面向文档的数据库,也就是非关系型数据库

    下载官网https://www.mongodb.com/
        那么关系型数据库的典型就是mySQL,oracle.....

    关系型数据库
    其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。
    非关系型数据库
    非关系型数据库是分布式的、非关系型的、不保证遵循ACID原则的数据存储系统。
    ACID是数据库管理系统的四种特性:[原子性](atomicity,或称不可分割性)、[一致性](consistency)、[隔离性](isolation,又称独立性)、[持久性](durability)。
    一般采用键值对的形式存储数据,如

    {
          name:"老王",
          age:"30"
    },
    {
          name:"老张",
          age:"30",
          sex:"男",
          _id:67387137
    }
    

    那么我们在存储每一条数据(文档)的时候,都会自带一个特殊的键就是_id:id值,这个键在集合中是唯一的
    当然文档也可以理解为一个键值对的有序集
    键不能含有\0空字符 因为空字符表示键的结尾
    .``$符号只有特定条件可以用
    注意:mongoDB中键不能有重复的键

    {
        foo:123;
        foo:111;
    }
    

    这样是不合法的


    在node中使用mongoDB数据库,来执行增删改查等操作

    1.连接数据库 2.创建数据库 3.创建表
    首先安装一个包npm i mongoose -S来操纵mongoDB

    • 1.连接数据库
    const mongoose = require("mongoose")
    //连接数据库
    mongoose .connect("mongodb://localhost:27017/project1",{
        useNewUrlParser: true,
        useUnifiedTopology: true
    })//固定的 
    .then(()=>{
        console.log("成功");
    }).catch(()=>{
        console.log("失败");
    })
    
    • 2创建数据库
      在连接mongodb://localhost:27017的路由后面加名字,就是创建了一个新数据库
      mongoDB还会监听一个比主端口号高1000的端口,也就是说是28017端口。通过浏览器访问http://localhost:28017,能获取管理数据库的信息
    • 3建表规则
      建表之前要先制定一套表规则
      建一个用户表 user
    let userSchema = new mongoose.Schema({
        //数据有哪些字段,每个字段的规则
        
        user:{
            //数据类型
            type:String,
            minlength:6,
            maxlength:12,
            //是否必须
            require:true
        }
    });
    

    基本类型:

    type:
    String Number Boolean...........
    required 是否必须
    default 默认值
    enum 枚举['男','女']

    针对type:String
    minlength:数字,
    maxlength:数字
    match:正则

    针对type:Number
    min:数字;
    max:数字;

    存数组
    arr:[
    //写规则
    {
    type:String
    }
    ];

    存对象
    obj:{
    key1:{
    规则
    },
    key2:{
    规则
    }
    }

    更多schema选项在http://www.mongoosejs.net/docs/api.html#Schema

    • 4 建表
    //建表
    let userDB = mongoose.model("user",userSchema)
    
    • 5存数据
    //存数据
    userDB.create({
        user:"hhhhhh"
    })
    

    相关文章

      网友评论

          本文标题:一,介绍MongDB数据库

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