记录node学习路上的知识点(4)

49 阅读1分钟

MongoDB

问:MongoDB 是什么?

一个基于文件储存的分布式NoSQL数据库系统 数据结构由键值对(key,value)组成 非常强大的查询能力

问:MongoDB有哪些特性?

  1. 文档型数据库 较强可扩展性 强大的查询 多种存储引擎
  2. 高性能 高可用 水平扩展 支持数据嵌入 子文档查询
  3. 支持副本集与分片 多种查询类型支持 支持数据聚合查询,

问:MongoDB的使用场景有哪些?

  1. 对数据处理性能有较高要求
  2. 需要借助缓存层来处理数据

windows 系统

www.mongodb.com/try/downloa…//下载最新版的mongodb www.mongodb.com/try/downloa…//6.0开始shell 需要单独安装在mongodb下bin文件夹

blog.csdn.net/weixin_5129…
//6.0开始shell 需要单独下载 并且需要单独配置环境变量 教程

常用shell 命令

  • mongosh 开始连接
  • show dbs 展示数据库信息
  • use xxx 切换到某数据库
  • show collections 查看集合表
  • quit() /exit; 断开退出
  • db.dropDatabase() 删当前库
  • db.xx.drop() 删除集合表

基本增删改查操作

  • db.xx.insertOne({}) 插入一条数据
  • db.xx.insertMany([{},{}])插入多条数据

  • db.xx.find({username:'lisi'})//查找语句
  • db.xx.find({age:{gt:15}'})//查找语句 gt 代表大于 所有
  • db.xx.findOne({age:{gt:15}'})//查找语句 gt 代表大于 满足的一条 $lt 代表小于

  • db.xx.updateOne({id:"1111"},{set:{}}) set代表要设置
  • db.xx.updateMany([{id:"1111"},{set:{}}]) set代表要设置

  • db.xx.deleteOne({age:18})
  • db.xx.deleteMany({age:18})

NodeJs操作mongodb

npm i mongodb //安装依赖

const { MongoClient } = require('mongodb')//引入 

const clent = new MongoClient('mongodb:地址:27017') //创建客户端示例 

async main(){
  await clent.connect() //客户端连接数据库
  const db = client.db(数据库名)
  const collection = db.collection(集合名)
  
  const data = await collection.find()//集合数据 
  console.log(data)//查询单条数据 修改 插入 删除 返回的提示
  console.log(await data.toArray()) //查询多条数据
   ...
}

//执行
main().finally(()=>client.close())