首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当执行mongodb deleteMany{()}时,会发生什么情况?

当执行mongodb的deleteMany({})操作时,会删除满足条件的多个文档。具体情况如下:

  1. 删除匹配条件的文档:deleteMany操作会根据传入的查询条件,删除满足条件的多个文档。
  2. 删除过程是原子操作:deleteMany操作是原子操作,要么全部删除满足条件的文档,要么一个都不删除。
  3. 返回删除结果:deleteMany操作会返回一个DeleteResult对象,其中包含有关删除操作的信息,如删除的文档数量。
  4. 不会触发触发器:deleteMany操作不会触发任何触发器,如删除前触发器或删除后触发器。
  5. 不会删除索引:deleteMany操作只会删除文档,不会删除任何索引。
  6. 不会删除集合:deleteMany操作只会删除文档,不会删除整个集合。
  7. 不会删除数据库:deleteMany操作只会删除文档,不会删除整个数据库。

推荐的腾讯云相关产品:腾讯云数据库 MongoDB,产品介绍链接地址:https://cloud.tencent.com/product/mongodb

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【翻译】MongoDB指南CRUD操作(二)

文档大小 执行更新操作,导致文档变大并超出已分配的大小时,更新操作会在磁盘上重新定位文件。 字段顺序 MongoDB 保持字段写入时的顺序,除非遇到下列情况: _id字段总是处在首位。...对于有序的操作列表,MongoDB 按顺序执行操作。如果在执行一个写操作发生错误,MongoDB 将会返回而不处理列表中剩下的操作。...对于无序的操作列表,MongoDB 并行地执行操作,但这种行为是无保障的。如果在执行一个写操作发生错误,MongoDB 将会继续执行列表中剩下的操作。...MongoDB处理有序列表的速度比处理无序列表的速度要慢,因为处理有序列表,每一个操作都要等待前一个操作执行完毕。 bulkWrite()方法默认依序执行操作。...写操作返回,在写关注超过wtimeout时间限制以前,MongoDB 不会取消对成功数据的修改。 如果你没有为写关注指定wtimeout 选项,指定级别的写关注不可实现,写操作将会无限期阻塞。

2.4K80

MongoDB删数据---一个无聊的测试

MongoDB删数据---一个无聊的测试 上周五的时候,线上的一个MongoDB集群需要删除部分数据,这个MongoDB集群本身是个分片集群,包含10个分片,架构如下: 集群的总体节点情况如下...分析: 因为是按照分片键进行删除,所以如果我们执行一条删除语句,理论上会将删除的请求分发到每个shard上,然后分别执行删除操作,最后汇总起来。...实际操作过程中,我们采用的删除语句如下: db.test.remove({pid:xxxxxxx}) 实际执行时间:977w满足条件的数据全部删除,总计不到2分钟。...(这个时间具有参考意义,大家可以记录下) 延伸 这里,就出现了一个问题,在MongoDB中,常用的删除语句有2中,分别是deleteMany语法和remove语法,那么这两种语法,到底哪个更快一点,更高效呢...2、deleteMany语法执行完成之后,告知执行是否失败,并告知记录条数;而remove方法执行之后,只给出记录条数。

77220
  • MongoDB :第七章:总结一下学习MongoDB的心得

    autoIndexId : true, size : 6142800, max : 10000 } ) { "ok" : 1 } > capped : true固定集合是指有着固定大小的集合,达到最大值...该值为 true ,必须指定 size 参数。 autoIndexId : true为 true,自动在 _id 字段创建索引。默认为 false。...', tags: ['mongodb', 'database', 'NoSQL'], likes: 100 }) col 是我们的集合名,如果该集合不在该数据库中, MongoDB 自动创建该集合并插入文档...', tags: ['mongodb', 'database', 'NoSQL'], likes: 100 }); 执行后显示结果如下: {         "title" : "MongoDB...如删除集合下全部文档: db.col.deleteMany({}) 删除 title等于 MongoDB 教程 的全部文档: db.col.deleteMany({ title: "MongoDB 教程

    52230

    MongoDB Bulk Write Operations

    document>, ordered : } ) operation是一个批量更新操作的数组,取值有insertOne,deleteOne,updateOne,deleteMany...,updateMany,replaceOne writeConcern:写关注的级别 ordered:是否顺序执行,如果为true顺序执行遇到错误停止执行后续操作,如果为false,执行过程遇到错误忽略并继续执行后续的任务...在分片集合上执行有序批操作会比普通集合更加耗时。...Capped集合限制 updateOne和updateMany操作,如果更新增加了文档的大小会抛出异常 replaceOne操作,如果新的文档大小比原始文档大,则会抛出异常 deleteOne和deleteMany...BulkWrite异常处理 在不考虑Write Concern报错下,错误会被写入writeErrors字段,有序操作在错误后停止,会写入第一个碰到的错误,无序操作则会写入批操作中的每个错误,一旦有错误发生

    12410

    MongoDB 安装及文档的基本操作

    必须指定 path systemLog#logAppend 实例启动时日志是否追加写入到现有日志中 systemLog#path 日志存放路径 storage#dbPath 数据存储路径 storage...save save() 也可以进行数据插入,新插入的 _id 存在,会将已存在的文档进行覆盖,如果 _id 不存在,则类似 insertOne() 的方式插入。...设置 true ,如果更新的条件没有匹配到数据,则插入此更新条件。反之,设为 false ,则不插入。 multi:默认为 false。...查询条件匹配到多条数据,如果设置为 true,则会更新所有匹配的数据;如果设置为 false,则更新匹配出的第一条数据。 writeConcern:和上面 insert 的参数一样。...deleteMany deleteMany() 一次可删除多个匹配到的文档,其语法: db.collection.deleteMany( , { writeConcern

    1.4K40

    浅尝辄止MongoDB:操作(3)

    使用与索引相关的函数 ---- 大部分摘自《MongoDB大数据处理权威指南》(第3版)。 5. 批处理数据 MongoDB允许批量执行写入操作。...在批量写入数据之前,首先需要告诉MongoDB如何写入数据:有序还是无序。以有序方式执行操作MongoDB按顺序执行操作列表。如果在处理一个写入操作发生错误,就不处理剩下的操作。...使用无序写入操作MongoDB以并行方式执行操作。如果在处理一个写入操作发生错误,MongoDB将继续处理剩余的写入操作。...注意列表中最多可以包含1000个操作,超过此限制MongoDB自动分割列表,把它们放在几个包含1000个操作的组中。...在无序列表中处理各类操作MongoDB会将这些操作按类型(插入、更新、删除)分组来提高性能。因此,应确保应用不依赖操作的执行顺序。

    99920

    MongoDB :第五章:MongoDB 插入更新删除查询文档

    100})1234567以上实例中 col 是我们的集合名,如果该集合不在该数据库中, MongoDB 自动创建该集合并插入文档。...在执行remove()函数前先执行find()命令来判断执行的条件是否正确,这是一个比较好的习惯。...123实例以下文档我们执行两次插入操作:>db.col.insert({title: 'MongoDB 教程', description: 'MongoDB 是一个 Nosql 数据库',...更新文档MongoDB 查询文档2 篇笔记 写笔记 三国电视台 tre***3@126.comremove() 方法已经过时了,现在官方推荐使用 deleteOne() 和 deleteMany...如删除集合下全部文档:db.inventory.deleteMany({})删除 status 等于 A 的全部文档:db.inventory.deleteMany({ status : "A" })删除

    1.1K20

    MongoDB系列---集合与文档操作03

    在插入文档MongoDB首先检查固定集合的size字段,然后检查max字段 1.1 使用默认集合   在MongoDB中,我们可以不用创建集合,当我们插入一些数据自动创建集合,并且会使用文档管理命令中的集合名称作为集合的名称...执行命令之后的: ?...3 删除文档   MongoDB是通过remove()函数、deleteOne()函数、deleteMany()函数来删除集合中的文档 3.1 remove 函数 语法格式是: db.集合名称.remove...且remove()函数并不会真正的释放掉存储空间,需要删除后,再用管理员权限的账户执行db.repairDatabase()函数来释放存储空间!...的所有文档(这里边用到了单条件运算符"$gt" ,我们后边详细讲解) db.day.deleteMany({age:{$gt:10}}) 4 查询文档   MongoDB是通过findOne

    1.3K10

    全面学习MongoDB,在Spring Boot项目中整合 MongoDB

    4、存储动态性,相较于传统的数据库要增加一个属性值的,对表的改动比较大,mongodb的面向文档的形式可以使其属性值轻意的增加和删除。而原来的关系型数据库要实现这个需要有很多的属性表来支持。...bind_ip 设置为0.0.0.0,否则Mongo服务只能本地连接,远程服务器连接不上。.../mongo 命令进入 MongoDB 后台后,它默认链接到 test 数据库: 3.2 基本操作 MongoDB可以说是最像关系数据库的非关系数据库。一些命令和Mysql 比较类似。...中,remove 和 deleteOne 以及 deleteMany 都用于删除文档记录。...() 方法已经过时了,现在官方推荐使用 deleteOne() 和 deleteMany() 方法。

    10K21

    使用Golang驱动操作MongoDB

    test库的sunshare集合,集合不存在自动创建 collection := client.Database("test").Collection("sunshare") wanger:=sunshareboy...查询多个文档 查询多个文档使用collection.Find()函数,这个函数返回一个游标,可以通过他来迭代并解码文档,迭代完成后,关闭游标 Find函数执行find命令并在集合中的匹配文档上返回Cursor...Connection to MongoDB closed. 删除MongoDB文档 可以使用collection.DeleteOne()或collection.DeleteMany()删除文档。...filter := bson.D{{"city","铁岭"}} deleteResult, err := collection.DeleteMany(context.TODO(), filter) if...获取MongoDB服务状态 上面我们介绍了对MongoDB的CRUD,其实还支持很多对mongoDB的操作,例如聚合、事物等,接下来介绍一下使用golang获取MongoDB服务状态,执行后会返回一个bson.Raw

    4.8K31

    MongoDB Java异步驱动快速指南

    执行异步回调 MongoDB异步驱动利用Netty或Java7的AsynchronousSocketChannel 来提供一个支持异步的API,以支持快速的、非阻塞式的IO操作。...该API形式和MongoDB同步驱动的新API保持一致,但是任何导致网络IO的方法都会有一个SingleResponseCallback并且立即返回,其中T是响应对于该文档的类型的任何方法。...创建多个实例: 所有的资源使用限制(例如最大连接数)适用于每个MongoClient实例 销毁实例,请确保调用 MongoClient.close() 清理资源。...使用 forEach() 方法可以提供一个 Block 作用于每个 document 并且迭代结束执行回调一次。...批量操作 批量操作允许批量的执行 插入、更新、删除操作。批量操作有两种类型: 有序的批量操作 有序的执行所有操作并在第一个写操作的错误处报告错误。 无序的批量操作 执行所有的操作并报告任何错误。

    2.8K100

    mongodb系列(2)-基本的CURD的使用

    介绍CRUD操作是create(创建)、read(读取)、update(更新)和delete(删除)MongoDB不支持常规的SQL的命令,但是自身有丰富的查询语言MongoDB在插入一条数据后,自动增加一个..._id自动,作为主键,如果插入的文档省略了id字段,则会自动生产一个Object_id字段MongoDB默认有4个数据库: test:登陆默认存在的库,不切换其他库默认存在的库 admin:系统预留库...,MongoDB系统管理库 local:本地预留库,存储关键日志 config:MongoDB配置信息库mongo默认登陆的时候是在test库下mongo不需要提前创建库和表,直接use切换就是创建库,...删除数据语法格式: 删除一个:db.表名.deleteOne({“条件1”:“值1”}) 删除多个:db.表名.deleteMany({“条件1”:“值1”})1....数据库增删改查基本使用MongoDB中文手册|官方文档中文版

    55641
    领券