设为首页 加入收藏

TOP

MongoDB---进阶简析(三)
2014-11-24 03:04:47 来源: 作者: 【 】 浏览:9
Tags:MongoDB--- 进阶 简析
references.forEach(
  function(ref){
    printjson(db[ref.$ref].findOne({"_id":ref.$id}));
  }); www.2cto.com

c.什么时候使用DBRef
在MongoDB中表示这种对其他文档的引用关系,并不是只有DBRef方式.
上面的例子就用了另外一种引用:每个note的author键仅存储了author文档的"_id"键,没有必要用DBRef,因为已经
知道每个author就是users集合里面的一个文档.这种引用在GridFS的块文档中"files_id"键仅仅就是对文档"_id"的引用.
在保存引用的时候是选择DBRef还是至存储"_id"
保存"_id"会更加紧凑,对开发者而言就很轻量.但是DBRef能够引用任意集合(甚至是任意数据库)的文档,开发者
不必知道和记住被引用的文档在哪些集合里面.驱动程序和一些工具对DBRef提供了额外的功能(如自动去引用).
总之,存储一些对 不同 集合的 文档的引用时,最好用DBRef.否则最好存储"_id"作为引用来使用,这样更简单,也更容易操作.
作者 refactor
首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Nosql数据库教程之初探MongoDB - .. 下一篇Group By和Having,Where,Order by..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·哈希表 - 菜鸟教程 (2025-12-24 20:18:55)
·MySQL存储引擎InnoDB (2025-12-24 20:18:53)
·索引堆及其优化 - 菜 (2025-12-24 20:18:50)
·Shell 中各种括号的 (2025-12-24 19:50:39)
·Shell 变量 - 菜鸟教 (2025-12-24 19:50:37)