Mongodb随记

2022/2/13 19:19:36

本文主要是介绍Mongodb随记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

      • 使用
        • 1.控制台命令行中操作mongodb
          • 常见命令行
        • 2.可视化图形工具中操作MongoDB:Navicat Premium 15
        • 3.通过后端代码区操作MongoDB
          • mongoose:Node.js提供的一个用于便捷操作MongoDB的库
          • express项目连接Mongodb
          • mongoose对数据库集合操作:
            • mongoose的一些操作函数

  • tip
    • 一个mongodb服务器可以有多个数据库
    • 每个数据库之间互不联系
    • 一个服务器只能同时启用一个数据库

使用

1.控制台命令行中操作mongodb

mongdb安装包 => bin => mongo.exe,双击打开

常见命令行
  1. 查看当前服务器中所有的数据库 : show dbs

  2. 查看当前指向的数据库 : db

  3. 新建/切换数据库:use 数据库名称

  4. 查看当前数据库的集合:show collections

  5. 往集合中加入数据(集合不存在,则新建):

    db.集合名称.insert({'name':'小明','age':'20'})

  6. 查看某个集合中所有的数据

    db.集合名称.find()
    db.集合名称.find().pretty()
    

2.可视化图形工具中操作MongoDB:Navicat Premium 15

安装:https://www.rjsos.com/archives/navicatpremium15.html

环境配置(安装链接里的教程安装失败的话,看教程):https://www.bilibili.com/video/BV1eh411B7NL?p=54

使用:https://www.bilibili.com/video/BV1eh411B7NL?p=61

3.通过后端代码区操作MongoDB

mongoose:Node.js提供的一个用于便捷操作MongoDB的库
  • 下载:npm i mongoose --save
express项目连接Mongodb
//app.js

// 链接mongodb
const mongoose = require('mongoose');
const dbURL = 'mongodb://localhost:27017/test';//项目链接的数据库地址
mongoose.connect(dbURL);//连接数据库
//项目与数据库连接成功触发
mongoose.connection.on('connected',function(){
  console.log( dbURL +'数据库连接成功');
});
  • test:为具体数据库的名称

  • 若数据库不存在则会自动创建

mongoose对数据库集合操作:
//users.js

// 1.定义数据集合中的结构:定义出集合中数据有哪些属性,属性的值是什么类型
const {Schema, model} = require('mongoose');

const usersSchema = new Schema({
  username: String,
  password: String
})

// 2.定义数据集合的模型,将schema和数据库中 的集合关联起来
//model('模型名称', usersSchema, '数据库中的集合名称');
const usersModel = model('usersModel',usersSchema,'users')
  • 每一个集合(路由文件都需要配置一次)
mongoose的一些操作函数
  • find: 查找模型(数据库集合)中匹配的数据

    //user = {name:'1111',pwd:'1111'}
    const result = await userModel.find(user);
    
    1. find为异步操作,需要用async, await
    2. 查询所有 userModel.find()
  • create: 新增数据

    userModel.create({
        name:'123',
        pwd:'122'
    })
    
    1. 为异步操作,需要用async, await
  • deleteOne/deleteMany: 删除数据

    userModel.deleteOne({username:'zhang'});//只删除一个匹配的
    userModel.deleteMany({username:'zhang'});//删除所有匹配的
    
    1. 为异步操作,需要用async, await
  • updateOne: 修改数据

    userModel.updateOne({_id:1},{name:'list',pwd:'222'});
    
    1. 为异步操作,需要用async, await

目录

      • 使用
        • 1.控制台命令行中操作mongodb
          • 常见命令行
        • 2.可视化图形工具中操作MongoDB:Navicat Premium 15
        • 3.通过后端代码区操作MongoDB
          • mongoose:Node.js提供的一个用于便捷操作MongoDB的库
          • express项目连接Mongodb
          • mongoose对数据库集合操作:
            • mongoose的一些操作函数



这篇关于Mongodb随记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程