2014-01-24 36 views
0

在MongoDB中,一个集合中的一个项目被称为文档。简而言之,文档集合什么是记录是关系数据库中的。现在我已经多次阅读子文档MongoDB中的子文档是否与子对象相同?

究竟是什么?

它只是文档的一个子对象吗?例如,如果我有文档:

{ 
    foo: 'xyz', 
    bar: { 
    baz: 'bla' 
    } 
} 

bar然后外文档的子文档,还是有更多的子文档?它有什么特点?

我在MongoDB的文档中找不到这个术语的解释,但也许它在那里,我没有找到它。

有人可以向我解释这个(或提供一个提示,我可以查看它)?

回答

1

这只是不同的术语。是的,子对象与子文档相同。例如,当您使用对象文档映射器(ODM)时,它可能会使用术语“文档”和“嵌入文档”(或“子文档”)。因为你使用某种编程语言(例如ruby)来处理这样的库,所以需要将MongoDB文档与普通的Ruby对象区分开来。否则有关该计划的谈话将会模糊不清。另一方面,当你从javascript shell直接查询数据库时,它只是你的对象(可以包含其他对象)。

这就是我的理解。

1

是的,bar是一个子文件。在mongodb文档中,他们使用json类型的Object文档调用字段。如果它嵌入在另一个文档中,比如你的示例中的bar,那么这就是他们所称的子文档。