Docs 菜单
Docs 主页
/
MongoDB Compass
/ /

修改单个文档

在此页面上

  • 限制
  • 步骤
  • 取消变更
  • 修改多个文档

您可以编辑集合中的现有文档。

当您在 List(列表)或 Table(表格)视图中编辑文档时,Compass 会执行 findOneandUpdate 操作并仅更新您已更改的字段。

在 JSON 视图中编辑文档时,Compass 会执行 findOneAndReplace操作并替换文档。

  • 不允许在 MongoDB Compass Readonly Edition 中修改文档。

根据您是在列表视图、JSON 还是表视图中查看文档,选择适当的标签页:

文档视图选择
点击放大

要修改文档,请将鼠标悬停在文档上,然后单击铅笔图标:

文档编辑选项
点击放大

单击铅笔图标后,文档将进入编辑模式。现在,您可以更改字段、值或值的数据类型。

要从文档中删除字段,请单击字段左侧的 图标:

文档删除
点击放大

选择后,该字段将被标记为已删除,并以红色突出显示。Compass 会要求您确认是否要通过删除该字段来更新文档。

要在文档中的现有字段之后添加新字段,请将鼠标悬停在对话框中的行号上,然后单击加号。行号不是文档的一部分,而是对话框显示内容的一部分。

向文档添加字段
点击放大

当文本光标位于最后一个文档字段的值上时,您还可以按 Tab 键在文档末尾添加新字段。

要修改字段,请单击现有字段名称或值并进行更改。在此示例中,boroughManhattan 更改为 Queens。更改的字段以黄色突出显示:

文档更新视图
点击放大

当您在 List(列表)或 Table(表格)视图中编辑文档时,Compass 会执行 findOneandUpdate 操作并仅更新您已更改的字段。

如果 Compass 检测到您更改了在 Compass 外部修改过的字段,则会向您发送通知,以防止您意外覆盖在 Compass 外部所做的更改。您可以选择继续并单击 Update 以替换文档,也可以取消更改。

完成文档编辑后,单击 Update 按钮提交更改。

要恢复对文档的更改,请将鼠标悬停在已编辑字段上,然后单击字段行号左侧显示的 revert icon

在列表视图中还原文档

要修改文档,请将鼠标悬停在文档上,然后单击铅笔图标:

JSON 视图中的选择文档选项
点击放大

单击铅笔图标后,文档将进入编辑模式。您现在可以通过修改 JSON 文档来添加、删除和编辑字段值。

默认情况下,此视图将隐藏嵌入式对象和数组。要展开嵌入式对象和数组元素,请将鼠标悬停在目标文档上,然后单击文档左侧的顶部箭头。

要展开单个对象和数组,请单击所需字段左侧的箭头。

在 JSON 视图中展开嵌入式对象
点击放大

在 JSON 视图中编辑文档时,Compass 会执行 findOneAndReplace操作并替换文档。

如果 Compass 检测到您更改了在 Compass 外部修改过的字段,则会向您发送通知,以防止您意外覆盖在 Compass 外部所做的更改。您可以选择继续并单击 Update 以替换文档,也可以取消更改。

要修改文档,请将鼠标悬停在文档上,然后单击铅笔图标:

表格视图中的文档编辑选项
点击放大

单击铅笔图标后,文档进入编辑模式。

当您在 List(列表)或 Table(表格)视图中编辑文档时,Compass 会执行 findOneandUpdate 操作并仅更新您已更改的字段。

如果 Compass 检测到您更改了在 Compass 外部修改过的字段,则会向您发送通知,以防止您意外覆盖在 Compass 外部所做的更改。您可以选择继续并单击 Update 以替换文档,也可以取消更改。

要从文档中删除字段,请执行以下操作:

  1. 单击要删除的字段的值。

  2. 单击 图标。

  3. 单击 Update 以确认更改。

要向文档添加新字段,请执行以下操作:

  1. 单击要在其后添加新字段的字段。

  2. 单击 图标。

  3. 单击 Add Field after <Field Name>(连接)。

  4. 填充新创建的字段。

  5. 单击 Update 以确认更改。

修改文档时,您可以选择在保存修改后的文档之前恢复对字段所做的更改。

点击已编辑表元素右侧的 revert icon

表视图中的文档还原更改

要退出编辑模式并取消对文档的所有待处理更改,请单击 Cancel(取消)按钮。

您可以在 Compass 中使用批量更新操作工作流来更新多个文档。有关详细信息,请参阅 修改多个文档。

注意

您也可以使用 db.collection.updateMany() 方法(在嵌入式 MongoDB Shell 中),在单个操作中更新多个文档。

后退

Insert