广告位联系
返回顶部
分享到

详细介绍如何更新MongoDB文档的_id

MongoDB 来源:互联网 作者:佚名 发布时间:2023-08-31 22:53:52 人浏览
摘要

您无法更新它,但可以保存新 ID 并删除旧 ID。请按照一些步骤更新 MongoDB 的 _id。步骤如下: 第1步:第一步,需要将ObjectId存储到变量中。 1 anyVariableName=db.yourCollectionName.findOne({_id:you

您无法更新它,但可以保存新 ID 并删除旧 ID。请按照一些步骤更新 MongoDB 的 _id。步骤如下:

第1步:第一步,需要将ObjectId存储到变量中。

1

anyVariableName=db.yourCollectionName.findOne({_id:yourObjectIdValue)});

第2步:在第二步中,您需要设置一个新的id。

1

yourDeclaredVariableName._id=yourNewObjectIdValue;

第3步:在第三步中,您需要在文档中插入新的ID。

1

db.yourCollectionName.insert(yourDeclaredVariableName);

第4步:在第四步中,您需要删除旧的ID。

1

db.yourCollectionName.remove({_id:yourOldObjectIdValue)});

为了理解上述步骤,让我们用文档创建一个集合。使用文档创建集合的查询如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

> db.updateIdDemo.insertOne({"StudentName":"Robert"});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c6ebfec6fd07954a4890683")

}

> db.updateIdDemo.insertOne({"StudentName":"Chris"});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c6ebff66fd07954a4890684")

}

> db.updateIdDemo.insertOne({"StudentName":"Maxwell"});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c6ebfff6fd07954a4890685")

}

借助 find() 方法显示集合中的所有文档。查询如下:

1

> db.updateIdDemo.find().pretty();

以下是输出:

1

2

3

{ "_id" : ObjectId("5c6ebfec6fd07954a4890683"), "StudentName" : "Robert" }

{ "_id" : ObjectId("5c6ebff66fd07954a4890684"), "StudentName" : "Chris" }

{ "_id" : ObjectId("5c6ebfff6fd07954a4890685"), "StudentName" : "Maxwell" }

以下是更新 MongoDB 文档 _id 的查询:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Step1:

> myId=db.updateIdDemo.findOne({_id:ObjectId("5c6ebfec6fd07954a4890683")});

{ "_id" : ObjectId("5c6ebfec6fd07954a4890683"), "StudentName" : "Robert" }

 

Step 2:

> myId._id=ObjectId("5c6ebfec6fd07954a4890689");

ObjectId("5c6ebfec6fd07954a4890689")

 

Step 3:

> db.updateIdDemo.insert(myId);

WriteResult({ "nInserted" : 1 })

 

Step 4:

> db.updateIdDemo.remove({_id:ObjectId("5c6ebfec6fd07954a4890683")});

WriteResult({ "nRemoved" : 1 })

让我们检查 _id 是否已更新。借助 find() 方法显示集合中的所有文档:

1

> db.updateIdDemo.find().pretty();

以下是输出:

1

2

3

{ "_id" : ObjectId("5c6ebff66fd07954a4890684"), "StudentName" : "Chris" }

{ "_id" : ObjectId("5c6ebfff6fd07954a4890685"), "StudentName" : "Maxwell" }

{ "_id" : ObjectId("5c6ebfec6fd07954a4890689"), "StudentName" : "Robert" }

查看示例输出,“StudentName”:“Robert” 的 _id 已更改。


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 : https://www.php.cn/faq/600574.html
相关文章
  • MongoDB数据库性能监控介绍

    MongoDB数据库性能监控介绍
    一、MongoDB启动超慢 1、启动日常卡住,根本不用为了截屏而快速操作,MongoDB启动真的超级慢~~ 2、启动MongoDB配置服务器,间歇性失败。 3、查
  • 详细介绍如何更新MongoDB文档的_id
    您无法更新它,但可以保存新 ID 并删除旧 ID。请按照一些步骤更新 MongoDB 的 _id。步骤如下: 第1步:第一步,需要将ObjectId存储到变量中。
  • MongoDB实现创建删除数据库、创建删除表(集合

    MongoDB实现创建删除数据库、创建删除表(集合
    一、 数据库使用 开启 mongodb 服务:要管理数据库,必须先开启服务,开启服务使用 1 mongod --dbpath c:\mongodb 管理 mongodb 数据库:(一定要在新
  • MongoDB数据库基本概念介绍

    MongoDB数据库基本概念介绍
    不管我们要学习什么数据库,都应该学习其中的基础概念,在MongoDB中基本的概念是文档、集合、数据库,下面挨个介绍。 下面的表格将会帮
  • MongoDB连接和创建数据库的方法

    MongoDB连接和创建数据库的方法
    一、连接MongoDB 在连接MongoDB前确保启动MongoDB服务,只需要在MongoDB安装目录的bin目录下执行mongo.exe即可。 执行启动操作后,mongodb在输出一些
  • 使用MongoDB操作文档

    使用MongoDB操作文档
    本篇文章中将讲解如何使用MongoDB操作文档。 文档的数据结构和JSON基本一致,所有存储在集合中的数据都是BSON格式。BSON是一种类似json格式
  • Laravel框架中使用MongoDB数据库的操作

    Laravel框架中使用MongoDB数据库的操作
    1、先确定好自己使用的哪个版本的 Laravel 框架,再决定 composer 哪一个的 MongoDB,我使用的是 Laravel 8 所以我 composer 了 3.8 的MongoDb 2、执行
  • SpringBoot整合mongoDB并自定义连接池的示例代码
    得力于SpringBoot的特性,整合mongoDB是很容易的,我们整合mongoDB的目的就是想用它给我们提供的mongoTemplate,它可以很容易的操作mongoDB数据库。
  • 剖析后OpLog订阅MongoDB的数据变更就没那么难了

    剖析后OpLog订阅MongoDB的数据变更就没那么难了
    前言 我们开源了一个订阅分发mysql的binlog的项目,一直用的非常好,忽然有天开发说能不能支持MongoDB的数据订阅呢,MongoDB的使用度也挺广泛
  • MongoDB的备份与恢复的介绍
    任何数据库都离不开日常的备份与恢复,这二者是数据库安全的前提,MongoDB的备份与恢复方法一般而言都采用自带的工具来进行。 在开始讲
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计