首页 > 数据库 >八.mongodb数据库的使用

八.mongodb数据库的使用

时间:2022-10-11 19:11:07浏览次数:82  
标签:const name cc mongodb 数据库 await db 使用 age

MongoDB  官网   安装案例 ==> 查看安装案例就可以安装成功了

  是什么?

    一个基于文件存储的分布式NoSQL数据库系统

    数据结构由键值对组成

    拥有非常强大的查询能力

  特性 ? 

    文档型数据库,较强可扩展性,拥有强大的查询语言,多种存储引擎

    高性能,高可用,水平扩展;支持数据嵌入,子文档查询,支持副本集与分片

    多种查询类型支持,且支持数据聚合查询,文本检索,地址位置查询

  使用场景 ?

    对数据处理性能有较高要求

    需要借助缓存层来处理数据

    需要高度的伸缩性

  安装 ? 

    奇数为测试版本,偶数为文档版本

    从3.2之后,不再支持32位操作系统

  基础概念 ?

    数据存储结构以及存储库

    集合  相当于一个表

    文档

  代码指令

    show  dbs  可以查看有多少个数据库 

    show collections. 可以查看多少个集合   

      use 库名  切换到什么库中   [ 允许切换到未创建的库,但是你需要创建出集合,才会显示  :  db.集合名.insert({x:1,y:2}) ]

    db  查看当前所在的库

    db.集合名.drop()     删除某个集合

    db.dropDatabase()

    

    增加功能

      db.cc.insertOne({name:'吴宇腾',age:88})  //插入一条

      db.cc.insertMany([{name:'吴宇腾',age:88},{name:'吴宇腾',age:88}]) //插入多条

    删除功能

      db.cc.deleteOne({age:88})    删除一条
      db.cc.deleteMany({age:{$gt:15}})   删除多条

      修改功能

      db.cc.updateOne({name:'yjx'}, {$set:{age:99}})  //把符合name为yjx的,设置他的age为99 

      db.cc.updateMany({age:{$gt:14}}, {$set:{name:'大于14岁'}})  把符合age大于14的,设置他的name为大于14岁  [多条] 

    查找功能

      db.cc.find({name:'吴宇腾'}) //查找数据     

        db.cc.find(   {  age:  {$gt:15} }  )   // 大于15

      db.cc.findOne(   {    age:    {$gt:15}    }   )  // 只需要查询一条.实际上是有2条的

    

node链接mongodb

  下载 npm i mongodb

练习 

const {MongoClient} = require('mongodb')
// 链接地址
const client = new MongoClient('mongodb://127.0.0.1:27017')


const mian = async ()=>{
    // 链接
    await client.connect()
    // 链接库
    const db = client.db('user')
    // 链接集合
    const cc = db.collection('cc')

    

    // 添加多条
    // const d = await cc.insertMany([
    //     {name:'吴宇腾',age:99},
    //     {name:'吴宇腾1',age:199},
    //     {name:'吴宇腾2',age:299},
    //     {name:'吴宇腾3',age:399},
    // ]) 
    
    // 添加单条
    // const d = await cc.insertOne( {name:'yjx',age:99})

    // 删除1条
    // const d = await cc.deleteOne( {name:'yjx'})

    // 删除多条
    // const d = await cc.deleteMany( {age:{$gt:200}})

    // 改1条
    // const d = await cc.updateOne( {age:{$gt:100}},{$set:{name:'大于100的年龄改name'}} )

    // 改多条
    // const d = await cc.updateMany({age:{$lt:100}},{$set:{name:'小于100',age:'55'}})

    // 查找 == 跟之前写的是一样的
    // const d = await cc.find()

    const d = await cc.find({age:{$gt:10}})

    console.log(d);

    // console.log(await d.toArray());

}


// 断开
mian().finally(()=>client.close())

 

标签:const,name,cc,mongodb,数据库,await,db,使用,age
From: https://www.cnblogs.com/qd-lbxx/p/16780325.html

相关文章

  • Linux中的hive使用小技巧
    Linux中的hive使用小技巧1在hive中可以看出我们在那一层中,而且可以显示表中的字段2配置如下(CDH中):目录如下:在目录汇总添加如下参数(为隐藏文件使用ls-a命令查看即......
  • FusionCharts的使用方法
    一、简介Ø FusionCharts 是InfoSoft Global 公司的一个产品,InfoSoft Global 公司是专业的Flash 图形方案提供商,他们还有几款其他的,基于Flash 技术的产品,都非常的......
  • 使用Hadoop patch包修复的一次经历
    原因:因为公司的平台的数据量在30P左右,使用了Hadoop3.1.2的版本,而且使用的纠删码功能,报错信息如下:java.io.IOException:UnexpectedEOSfromthereaderatorg.apache.hadoo......
  • mybatis返回值乱码(mysql数据库编码正确)
    解决办法:在springmvc.xml文件里面插入<!--解决乱码问题--><mvc:annotation-driven><mvc:message-converters><beanclass="org.springfram......
  • 记录一次关于使用leaflet draw 插件叠加图层删除绘制层无法删除的问题
    问题描述业务逻辑是这样的:再地图上已经绘制了一个多边形区域,然后需要再绘制的区域下再绘制下级区域,使用插件可以正常绘制并保存绘制数据,然后再回显编辑的时候,此时地图展示......
  • VS插件Git的使用
    1、克隆代码。2、新建自己的分支3、切换分支4、代码更改文件数5、代码暂存至本地6、本地代码暂存次数7、代码推送至远程8、查看修改记录9、查看某次提......
  • 内置认证类,权限类,频率类,补充django的配置文件每个配置项的作用,过滤类的其它使用,全局异
    1.内置认证类,权限类,频率类就在这展示一下,以免我忘记,具体用法不做说明1.内置认证类fromrest_framework.authenticationimportBaseAuthentication,RemoteUserAuthenti......
  • linux笔记_1_db2数据库创建初始化
    1、创建用户compgen-uuseraddbank_bl-d/home/bank_bl-gdb2iadm1passwdbank_bl2、进入实例用户su-db2inst13、数据库操作db2listdbdirectory(查看......
  • Mongodb版本升级注意事项
    Mongodb支持在线滚动升级,不需要停业务在升级前有哪些需要注意的呢?1、查看官方升级文档根据官方文档升级到相应的版本(比如不一定支持跨大版本升级)升级对应版本是否是稳定......
  • 22_播放器之使用SDL显示YUV视频
    简介使用SDL实现简单的YUV播放器。这里还需要使用到像素格式和计算图片大小,这两个我们直接使用ffmpeg来实现,因此需要使用ffmpeg的libavutil/avutil.h和libavutil/imgut......