Visio画ER图

  创建数据库时咱们须要考虑数据之间的关系,为了理清数据之间的关系咱们须要对数据进行统一的整理。对于较复杂的数据库咱们须要创建数据库模型,具体可分为两步:首先对数据库进行结构分析并使用树、表等描述数据,而后分析数据库的操做方法,规定数据库的增删改查操做,这两个步骤就构成了咱们一般所说的数据库模型。数据库

        数据库模型有多重分类,一般所说的ER图是图模型,除此以外还有层次模型、网状模型、关系模型等。这其中比较简单的当数ER图,也称实体-联系图(Entity RelationshipDiagram),它提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。通常的ER图画法是采用圆、正方形、菱形来描述实体及他们之间的关系,这三者在图中分别表明了属性、实体、联系,以下图为通常ER图。架构


        对ER图进行建模时提倡使用PowerDesigner(功能强大,形式多样),由于PowerDesigner可以直接将ER图导出为T-SQL代码。PowerDesigner可以作到Visio就不能吗?其实Visio自己没有太大的毛病,并且操做简单,可是功能相对较少和其余开发程序交互较弱。工具

1、Visio绘制ER图

      一、Visio绘制通常的ER图

        Visio没有提供专门的模板来绘制通常的ER图,有一种比较折中的办法:先在“更多形状”-->“流程图”-->“基本流程图”中找到长方形和菱形,分别右键“添加到个人形状”-->“添加到新模具”在弹出的对话框中填入“ER图”,这样咱们就把菱形和方块添加到了新模具“ER图”中。用一样的思路,在“数据库”-->“ORM图表”找到椭圆和直线,添加到模具“ER图”中。spa

       添加完成后,咱们就能够在画ER图时打开该模具(文件->形状->打开模具),ER图全部的元素都会在一个模具中显示出来了。.net

     二、用Visio自带的数据库模型模型图画ER图

        Visio提供了两种形式绘制ER图,一种是经过数据库选项卡内的反向工程,它经过Visio和其余数据库驱动器进行交互,将已有的数据库架构转换为ER图;另外一种是经过图形工具本身建立ER图。下面以一个收费系统的数据库的ER图为例,为你们介绍visio绘制ER图的方法。3d

       打开Visio后选择“文件”-->“新建”-->“软件和数据库”,而后双击建立数据库模型图。建立后的控制面板左边分别有三个针对数据库ER模型的七个专用工具,最经常使用的是最上面的两个分别表明了数据库表及外键关系。操做简单在使用时只需将实体拖到页面上,随后会在下面出现数据库属性,在其中添加或修改数据表的一些属性。xml

        能够经过更改实体的属性进行增长列、设置列数据类型、设置主键等功能。下图建立了一个名为T_Admin的实体,主键为chSerial。blog

          提示:若是想实体图显示实体的数据类型,能够经过数据库----管理----显示选项----表----数据类型---显示物理的,进行设置 。
ip

        实体间的关系,在visio中有两种表示表示方法;分别为下图所示:开发

                    

        visio默认为第一种形式,箭头的指向为实体的父表。能够经过数据库----管理----显示选项----文档----同时选中关系和鱼尾纹进行设置改变为第二种显示方式。

        使用关系链接线链接后,会自动生成外键(前提是在两个表内那个外键的列名一致,不然须要本身在从表添加上外键列而后进行关联)。生成的外键会在从表中自动建立父表中的主键列,可经过“数据库属性”----“定义”----选中两表中相互关联的列----“断开链接”来断开列,一样也可使用该方法来链接两表中的列做为外键。效果图以下图所示:

 


       使用Visio画的ER图基本的操做步骤已介绍完毕,在使用Visio建模时必定要细心,在画图前期必定要分析好每一个实体及实体属性的命名规范。

       上面的方法是经过使用图形工具来本身建立ER图,另一种方法是经过“数据库”----“反响工程”自动生成某个数据库的ER图,操做简单、方便,建议你们使用下并和本身建立的ER图进行比较来纠正本身的使用误区。

2、Visio数据库模型图导出成SQL脚本

        Visio没有提供直接的导出方法,想要将画好的ER图导出为SQL脚本只依赖Visio是远远不够的,而要使用其余工具。一种方法是使用Visio的导入/导出功能,将模型图导出为ERwin文件,而后使用PowerDesigner或者ERwin打开,最后转换为SQL便可,可是这种方法在Visio2010中已不存在,Visio2010不支持将ER图导出为ERwin格式,只支持导入。这就须要咱们的第二种方法。

       另一种方法是使用OrthogonalToolBox小工具,它是专门负责VisioER转出的小工具,這個工具会经过XSLT模板来产生对应的SQLScript。

 使用方法:

       1.下载并安装OrthogonalToolBox(注:须要先安裝.Net Framework 1.1.4322,下载地址http://download.csdn.net/detail/zhang_xinxiu/5788193);

       2.把下载下来的xslt文档Copy到:C:\Program Files(X86)\OrthogonalSoftware Corporation\Orthogonal Toolbox\StyleSheets;

       3.若在Visio工具列沒有看到OrthogonalToolbox,在目前的工具列上检视 - 工具列 – OrthogonalToolbox 打勾,即可看到;

      4. 选择“加载项”-->“OrthogonalToolbox”-->选中须要导出的ER图-->“Export XML”-->选中Set StyleSheet-->并选中OTERtoSQL.xslt模板


       5.按下 Export会产生一个xml文件,使用IE打开该XML文件便可看见咱们建立数据库的SQL脚本。

      有问题就会有解决方法,咱们须要耐心去找到它,有时几分钟,有时甚至几小时又或者几天,解决问题的关键在因而否有耐心,在这个过程当中学到的知识比结果更重要。