当前位置:  开发笔记 > 数据库 > 正文

Mongo DBRef的问题是什么?

如何解决《MongoDBRef的问题是什么?》经验,为你挑选了1个好方法。

从RDMBS背景来看,很难不考虑像连接这样的思想,特别是在使用无模式的MongoDB环境时.

我在博客上看到DBRefs仅在您知道您引用的对象类型时才有用.

为什么会这样?当然,他们有更多的用途.

假设我有一个用户集合和一个雇主集合.许多用户可以引用同一个雇主.对我来说,这是DBRef的完美使用.但是,这与我在博客上看到的内容相矛盾.

当然,我可以将雇主嵌入到每个用户集合中,但是当雇主改变时会发生什么?也许他们雇主改变地址或电话号码或其他东西.如果雇主嵌入在每个用户中,那么我必须更新每个用户的嵌入式文档.

那不可能有效.或者可以吗?



1> Maxence..:

DBRefs是一种数据结构,包括集合名称和对象ID.如果您知道您的集合的名称(如您的示例,雇主),则不需要DBRef.只需将雇主的对象ID存储在您的用户集合中.您可以节省集合名称占用的空间.

当集合名称可以更改时,请使用DBRef.例如,您有一个评论集合.您希望使用它在博客文章和书页(2个不同的集合)上存储评论.如果要在评论中存储对帖子或页面的引用,则需要使用数据库引用.

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有