ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

<二>MongoDb基本操作

2022-06-11 19:35:32  阅读:197  来源: 互联网

标签:.. MongoDb 数据库 db update 文档 集合 基本操作


一、基本概念

mongodb有三个概念

  • 数据库(database)数据库是一个仓库,在仓库中可以存放集合。
  • 集合(collection)集合类似于数组,在集合中可以存放文档。
  • 文档(document)文档数据库中的最小单位,我们存储和操作的内容都是文档。

就是说在mongodb中一条数据就是一个文档,多个文档组成集合,多个集合组成数据库。如下:

 

 

 二、基本指令

1、安装robo 3t  作为数据库可视化工具,详情我就不说了

1、数据库操作

  • show dbs 显示所有的数据库
  • use 数据库名

  1. 使用use时,如果数据库存在则会进入到相应的数据库,如果不存在,当对数据库执行插入文档的时候会自动创建

  2. 一旦进入数据库,则可以使用db来引用当前库

  • show db.collections  显示当前数据库的所有集合

  • db.createCollection()使用create时创建一个新的集合

  • db.<collectionname>.drop()    使用drop时删除集合

 

2、文档的操作

  • 插入文档 

 

 1、db.<collectionname>.insert (文档) 可以向集合中添加一个或者多个文档,插入时每个文档会生成一个唯一的标识id.如果集合不存在则会自动创建。若插入的数据主键已经存在,则会抛 org.springframework.dao.DuplicateKeyException 异常,提示主键重复,不保存当前数

db.<collectionname>.insert (
<document>
)

 

2、db.<collectionname>.save(文档)如果 _id 主键存在则更新数据,如果不存在就插入数据。该方法新版本中已废弃,可以使用 db.collection.replaceOne() 来代替。

db.collectionname.replaceOne(
   <document>,     //匹配文档
    <document>     //需要更新的文档
)

 

 

 3、db.collection.insertMany() 批量插入数据

db.collectionname.insertMany(
   [ <document 1> , <document 2>, ... ],
   {
      writeConcern: <document>,
      ordered: <boolean>
   }
)
>>document:要写入的文档。
>>writeConcern:写入策略,默认为 1,即要求确认写操作,0 是不要求。
>>ordered:指定是否按顺序写入,默认 true,按顺序写入。

 

 

 

  • 修改文档  db.<collectionname>.update ()   

db.collectionname.update(
   <query>,
   <update>,
   {
     upsert: <boolean>,
     multi: <boolean>,
     writeConcern: <document>
   }
)
>>query : update的查询条件,类似sql update查询内where后面的。
>>update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
>>upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
>>multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
>>writeConcern :可选,抛出异常的级别。

  • 删除文档  db.<collectionname>.remove(文档)  移除指定文档对象,移除后不可撤销

db.collection.remove(
   <query>,
   {
     justOne: <boolean>,
     writeConcern: <document>
   }
)
>>query :(可选)删除的文档的条件。
>>justOne : (可选)如果设为 true 或 1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。
>>writeConcern :(可选)抛出异常的级别。

  • 查询文档  db.<collectionname>.find()    pretty()以格式化的方式输出

db.collectionname.find(query, projection)
>>query :可选,使用查询操作符指定查询条件
>>projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。

 

标签:..,MongoDb,数据库,db,update,文档,集合,基本操作
来源: https://www.cnblogs.com/choii/p/16366566.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有