MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
2015-01-02 22:49
525 查看
一、包含子文档的集合操作
有这么一个应用场景,某网站提供会员登录的功能,用户需要注册账号才能享受会员服务,但是注册者可能会因为用户资料表单输入项过大而放弃填写,因此用户信息分为主要资料和详细资料两项,初次注册只需要填写主要资料就行了。我们打算把详细信息设计为子文档存储。1) linq方式实现
1. 新建数据描述类,描述用户信息
+
View Code
4. 定义一个查找数据的方法“Select”,它将查找用户详细信息中,地址在湖北的全部用户:
普通方式实现不想多讲,直接贴代码,看看与linq方式有什么区别:
+
View Code
最后,我们通过这段代码输出全部用户资料信息的BJSON格式:
二、包含“子集合”的集合操作
同样举个例子:有一个学校人事管理系统要统计班级和学生的信息,现在定义了一个“班级集合”,这个集合里面的学生字段是一个“学生集合”,包含了本班全部学生。1) linq方式实现
基础配置我就不多说了,数据类定义如下:
(这里其实是ToList后在内存中查的,linq方式直接查询好像驱动不支持。)
查询叫“张三”的学生在哪个班级,以及他的详细信息:
三、小结
通过本节例子我们发现,MongoDB有它独特的文档结构可以描述数据对象之间的一些关系特征。它虽然没有关系型数据库多表符合查询那样强大的表间查询方式,但也可以通过文档结构描述更灵活的关系特性,可以这么说,关系型数据库能做的,MongoDB基本上也可以做到。甚至有些关系数据库不容易做到的,MongoDB也可以轻松做到,比如,描述数据类的继承关系等。
相关文章推荐
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系(转)
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
- 用MongoDB的文档结构描述数据关系
- 【NOSQL】非关系型数据库MongoDB ( 用MongoDB的文档结构描述数据关系 )
- MongoDB教程(四)-用MongoDB的文档结构描述数据关系
- 从ArcGIS、MapInfo、SuperMap保存文档看地图文档与数据文件的关系
- 发布最实用的数据结构(快速Hash树)SDK开发包---产品文档