UML建模之数据建模(Data Model Diagram)

     一、数据库模简介

二、数据建模元素.

1、表(Table

2、表索引(Table Index

3、表触发器(Table Trigger

4、表约束(Table Constraint

5、视图(View

6、存储过程(Stored Procedure

三、数据建模实例

四、总结


一、数据建模简介

数据建模不仅可以对象的属性建模(比如E-R图),也可以对数据的行为建模(比如触发器Trigger、存储过程Stored Procedure.在进行数据库设计时,设计到如下几个概念:

模式 Schema、主键 Primary、外键 Foreign key、关系 Relationship、约束 constraint、索引 Index、触发器 Trigger、存储过程 Stored Procedure、视图 View

二、数据建模元素

1、表(Table

表是关系数据库最基本的模型结构。如下图

 

 

表的主键:InventoryID

表的外键:WarehouseId,关联到表Warehouse的主键

可以设置Table的数据库类型,如下图

 

 

也可以设置表空间,如下图

 

 

 

2、表索引(Table Index

指按表文件中某个关键字段或表达式建立记录的逻辑顺序。它是由一系列记录号组成的一个列表,提供对数据的快速访问。索引不改变表中记录的物理顺序

3、表触发器(Table Trigger

当对某一表进行诸如UPDATE INSERT DELETE 这些操作时,SQL Server 就会自动执行触发器所定义的SQL 语句,从而确保对数据的处理必须符合由这些SQL 语句所定义的规则。
   
触发器的主要作用就是其能够实现由主键和外键所不能保证的复杂的参照完整性和数据的一致性

4、表约束(Table Constraint

通过对列的约束,保证数据的有效性。

 

 

 

5、视图(View

视图是从一个或多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。如下图

 

 

6、存储过程(Stored Procedure

将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来, 那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute,即可自动完成命令。

 

 

 

 

三、数据建模实例

 

 

1、表有仓库Warehouse、库存Inventory以及书Book

2、主键分别为WarehouseIDInventoryID,ISBN

3、外键,表Iinventory的外键是WarehouseID,同时也是Warehouse的主键

   Book的外键是InventoryID,同时也是Inventory的主键

4、关系,表Warehouse与表Inventory是一对多的关系

   Inventory与表Book是一对多的关系。

四、总结

本文主要介绍了数据库建模所涉及建模元素,主要包括模式 Schema、主键 Primary、外键 Foreign key、关系 Relationship、约束 constraint、索引 Index、触发器 Trigger、存储过程 Stored Procedure、视图 View等等,并配以实例加以说明。

本篇文章比较简单,也是《UML建模-面向对象技术》系列文章的最后一篇建模文章。对此系列文章,后期抽个时间再写个总结,使的UML建模系列文章知识性更连贯,内容更加清晰。

 

 

 

版权

作者:灵动生活

出处:http://www.cnblogs.com/ywqu

如果你认为此文章有用,请点击底端的【推荐】让其他人也了解此文章,

你也可以加我的新浪微博,以便实时了解我的动态:http://weibo.com/ywqu

WOWO Mandarin(英语培训):http://www.wowomandarin.com上海网站制作

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

 

posted @ 2009-12-26 01:12 灵动生活 阅读(3833) 评论(9) 编辑 收藏

 回复 引用 查看   
#1楼 2009-12-26 09:11 时刻追求着      
这网站IE8变形了,嘿嘿
 回复 引用 查看   
#2楼 2009-12-27 00:55 Pandora      
能把程序画出来给别人看固然很好,但我总是记不得哪个模块该用方块,哪个该用椭圆。
 回复 引用 查看   
#3楼 2010-01-04 16:54 Joyaspx      
请教一下你的数据建模用的是什么工具呢?
 回复 引用 查看   
#4楼[楼主] 2010-01-04 17:09 灵动生活      
@Joyaspx
EA:Enterprise Architect 7.0 很不错的工具,在www.eauml.com有下载

 回复 引用 查看   
#5楼 2010-01-04 17:38 Joyaspx      
哦,谢谢,我目前就是用EA,初级阶段,还没用它做过数据建模,以前都是用powerdesigner,看来以后得多花点时间来研究研究了
 回复 引用   
#6楼 2010-02-25 14:44 skyh[未注册用户]
请问这个模型建立后一般归入什么文档,单独建立数据库设计文档?或者加入需求分析文档?
 回复 引用 查看   
#7楼[楼主] 2010-02-25 16:20 灵动生活      
@skyh
按照软件工程的规范 应该会有数据库设计文档的,放到这里面就OK,有的项目也要求放到概要设计文档里面。

 回复 引用 查看   
#8楼 2010-03-23 11:09 gumarco      
引用时刻追求着:这网站IE8变形了,嘿嘿

对的 我的也是 哎 没办法

 回复 引用 查看   
#9楼 2010-10-14 00:27 紫炎之心      
大哥,数据建模你应该用EA来说明一下他的步骤吗?谢谢!