用实体关系图进行
数据库
建模 一、概述 很可能你现在正在规划一个数据库驱动的网站;而且几乎可以肯定的是,你一定已经浏览过数据库驱动的网站。过去,一些网站依赖CGI脚本和文本文件存储实现数据持久化,但现在我们能够访问大量不同的关系型、对象-关系型、面向对象型数据库。 对于Web应用来说,关系数据库是一种强大的支持
工具,这得感谢它们的高可用性、性能,而且相对来说,关系数据库比较容易使用。要找出一个功能完善、源代码开放、能够在多种平台上运行的数据库系统并不困难。你可以用Perl、Java、PHP以及其他服务器端脚本语言把关系数据库和Web网站连结到一起。 随着网站规模的发展,它对数据库——通常是关系数据库——的依赖程度也日益增加。大量页面和服务需要向数据库表写入信息,或者从数据库提取信息。对于大多数网站,数据库表很快成为网站体系结构中的关键部分,成为网站运作的生命中枢。为了方便和轻松地管理大容量数据,用户帐户、新闻动态、内容、统计数据都可以保存到关系数据库管理系统(Relational Database Management System,RDBMS)。 用图(Diagram)管理数据模型具有高效、方便的优点。对于RDBMS,描述数据模型的图通常称为实体关系图(Entity Relationship Diagram,ERD)。用ERD描述数据模型能够帮助你预先精确定义数据需求,使你能够对以后的改动作出有效的规划,能够随着网站的发展方便地改进规划。 本文将介绍ERD建模工具和概念。文章提供了一些图的实例,但它们的目的不是提供精确的或者是全面的数据设计范例。它们的目的是以两个建模工具为例,介绍数据建模符号。在不同的工具之间,图的符号有着重大的差别,但它们的基本概念一样。本文的图例从PowerDesigner和Visio 2000 Professional的试用版得到,你可以从本文末尾找到这些工具和其他类似产品的链接。二、是否使用建模工具? 许多规模较小的网站用ASCII形式的SQL(Structured Query Language)脚本文件进行数据建模。当开发小组人员较少,或者最理想的情况下仅由一个人构成时,这种方法最有效。然而,数据模型将很快发展成为一个复杂的结构——在这种情况下,CASE(Computer Aided Software Engineering,计算机辅助软件设计)工具、有关所有数据信息的图、集中式知识库能够极大地帮助你管理Web网站的数据层。2.1 何时使用SQL? 即使当你准备用SQL直接管理数据模式(物理数据库)时,图也能有效地帮助你理解和改进系统。然而,如果你的预算或者时间非常有限,采用复杂的新式建模工具可能得不偿失。相反,在这种情况下,你应该使用一个简单的图形工具把数据模式的基本情况记录下来,然后逐步转换到复杂的数据建模工具。 如果你正在设计的数据库类型不常见(或者是非标准的),避免使用某些复杂CASE工具可能是明智的,因为这些工具的“反向工程”能力和某些自动功能可能无法在你的环境下发挥作用。这里所谓的自动功能,是指建模工具根据输入模型的图形和属性信息,自动为目标数据库生成合适SQL命令的能力。反向工程是这样一种能力,建模工具根据已经部署的物理数据模式,从现有的表提取出实体和关系信息。2.2 转入建模工具 从简单绘图工具转换到数据建模工具并不是一个很复杂的过程。大多数数据建模工具的工作方式就象是一个标准的绘图工具,参见图1a和图1b,这是两个数据建模工具的界面实例。你可以在这里创建和排列表,定义关系,以及指定其它信息(列的类型、长度,键等)。 图1a:PowerDesigner的界面 图1b:Visio的界面 转向数据建模工具的主要挑战在于:学习使用建模符号。 在不丢失任何关键信息的前提下,用数据建模工具描述现有数据模型。 寻找一个对你的数据库提供全面支持的工具,例如在生成SQL、从现有数据模式通过反向工程建立数据模型时。 一些入门级数据建模工具(参见本文后面的参考资源)只有少量的高级特性。这有好处,但也有弊端——它们很容易学习使用,但当你积累了更多的经验时,它们可能不再满
1、薄荷健康
薄荷健康App权威食物库,卡路里热量精确查,吃得明白——薄荷科学家10年来一直专注于中国食物库的精确与完善,百度、三星均采用薄荷的食物数据。
2、FatSecret
FatSecret的界面十分简洁,主界面分为快速选择、我的计数器两大类别,其中“快速选择”功能主要用于查找食品,餐厅和连锁店,流行的食品牌子以及超市品牌等相关内容;而“我的计数器”功能为用户提供了食物、运动方面的日记,以及饮食总结功能。
3、卡卡健康
卡卡iCalorie 是一款记录每天所吃的食物,并通过卡路里帮你转换成该做多少运动的应用。只需要几个简单的点击,即可轻松添加每天的食物记录,对能量摄入有更详细的了解。
4、My Fitness Pal
MyFitnessPal 最大的优势在于,拥有全世界最大的食物热量数据库。正式向中国用户提供本土化服务之后,还新增了国人常用的重量、高度、距离等计量单位,进一步丰富美食数据库,连庆丰包子都可以查到。
5、Lifesum
Lifesum 可以提供包括制定减肥计划,记录卡路里摄入量、运动燃烧的卡路里等,值得一提的是,用户只需要扫描食品二维码,就可以获得具体的营养成分和热量数据,让你快速查看食物拥有多少碳水化合物、脂肪和蛋白质。
评论列表(0条)