您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > PowerDesigner数据建模1实验报告
《信息系统分析与设计》实验报告实验序号:04实验项目名称:PowerDesigner数据建模1学号姓名专业、班级软件工程1103实验地点计—201指导教师时间2014.10.27一、实验目的1)了解系统分析和建模工具PowerDesigner的基本概念和操作界面。2)了解PowerDesigner的4个模型:业务处理模型(BPM)、概念数据模型(CDM)、物理数据模型(PDM)和面向对象模型(OOM)及其相互关系与作用。3)用PowerDesigner工具进行简单系统分析建模操作。二、实验内容1、绘制E-R图,并转换成PDM模型步骤1:启动PowerDesigner,进入PowerDesigner的操作主界面,如图1所示。图1PowerDesigner主界面步骤2:在File菜单中单击New…命令,或者单击New(新建)按钮,屏幕进一步显示如图2所示。图2新建项目选择在Modeltype(模型类型)框中,可以看到:BusinessProcessModel(BPM——业务处理模型)、ConceptualDataModel(CDM——概念数据模型)、Object-OrientedModel(OOM——面向对象模型)和PhysicalDataModel(PDM——物理数据模型)等选项。在此,我们选择CDM并按“确定”按钮。步骤3:进入PowerDesigner的CDM操作窗口,如图3所示。图3CDM操作窗口在窗口上方横向有一组工具按钮图标,其中有实体的边框、联线、字体加粗、加黑等图标,但最常用的工具图标在Palette工具栏中,包括实体、关系、放大、缩小、移动等26个图标工具。读者用鼠标单击某个图标,再到界面中央单击(例如,画实体框),或拖动(例如,画实体关系联线)即可。比如,“图书信息系统”的E-R图有5个基本实体,所以,单击实体图标(Entity),然后在操作界面中单击5下,得到5个实体框并适当布局,如图4所示。图4画实体框此时,这5个实体还是空的,其名字可以临时任意选取,并且还没有属性。接下来,要逐步对每个实体的名字及其属性进行定义。步骤4:定义实体。用鼠标双击第一个实体框,打开实体属性定义窗口,如图5所示,开始定义实体“图书”。在该窗口中,有许多对实体进行描述的选项卡,用户可以根据需要,对实体的宏观特征进行定义或描述。图5定义实体此例中,对Name栏输入“图书”,在Code处输入“Book”,在Number处输入实体中实例(记录)的最大个数“10000000”,它表示图书馆的最大藏书量最大可达一亿册。这个数字的作用,是便于计算并估计数据库服务器的磁盘容量。步骤5:定义属件、属性的约束和算法。单击Attributes按钮,进入定义该实体的属性界面,如图6所示。图6定义属性图7数据类型选项每一行定义一个属性,包括:属性名称,属性代码,数据类型,使用域、是否强制(M)、是否为主键(P)以及是否显示属性(D)等。属性名称在概念数据模型中显示,但在物理数据模型中忽略。本次操作中,需要定义的属性内容如表1所示。表1定义“图书”(Book)属性序号NameCodeDataTypeDomainMPD1图书号Book_NoA10None2书名Book_NameVA20None3单价Book_PriceN6,2None4作者Book_AuthorVA60None5出版社Book_ConcernVA40None6出版日期Book_DateDNone7借出标志Book_IDA1None属性定义完毕,单击“确定”按钮返回。在定义字符类型的时候,可以通过单击“…”按钮显示全部类型选项并从中选择,如图7所示。步骤6:同理,依次完成其他四个实体的属性定义。如图8和表2~5所示。a)b)c)d)图8其他实体的属性设置表2定义“借还书”(Return)属性序号NameCodeDataTypeDomainMPD1借还日期Return_DateDTNone2借还标志Return_IDA1None表3定义“读者”(Reader)属性序号NameCodeDataTypeDomainMPD1Reader_NoA8None2姓名Reader_NameVA8None3证件号Reader_IDVA20None4电话Reader_PhoneVA18None5地址Reader_AddressVA50None6E-mailReader_EmailVA20None表4定义“书库”(Library)属性序号NameCodeDataTypeDomainMPD1架位号Library_NoA20None2架位地址Library_AddressVA38None表5定义“单位”(Unit)属性序号NameCodeDataTypeDomainMPD1单位号Unit_NoVA10None2单位地址Unit_AddressVA50None3单位电话Unit_PhoneVA18None步骤7:定义关系。当实体及其属性定义完成后,开始定义实体间的关系。在Palette工具栏中选择Relationship图标,在相关联两个实体中的一个实体的图形符号上单击左键,拖动鼠标到另外一个实体释放,就可在两个实体之间建立联系,如图9所示。图书和借还书之间是1:1的关系借还书与读者之间是n:1的关系读者和单位之间是n:1的关系图书和书库之间是n:1的关系其中关系name自定义,code参照图12图9定义关系基本关系分为一对一、一对多、多对多三种。连线的开叉一端代表多,不开叉的一端代表一,带小圆圈的—端代表可选,即记录可能有也可能没有;带小十字的一端代表强制(必须有记录)。步骤8:双击表示联系的图形符号,可打开联系属性定义窗口,其中的General选项卡内容如图9.13a)所示。Name:此联系的名称,可以是中文信息。Code:此联系的代码,必须是英文。Comment:对联系的进一步说明,可以是中文信息,也可以为空。Entity1和Entity2:两个关联实体的名称。Cardinalities选项卡用来填写联系的细节信息,如图10b)所示。其中:a)b)图10联系属性定义窗口One–Many:联系的类型,如一对一、一对多、多对一、多对多等。Cardinality:基数,“0,n”表示一个实体可以有0到n个联系实体;“1,1”表示一个实体必须对应另一个实体。Dependent:依赖关系。表示实体所包含的基本信息必须依赖于另一个实体的基本信息。步骤9:系统所有的实体、属性、关系都定义完毕后,单击“确定”按钮返回CDM主窗口。步骤10:可以在Tools菜单中单击CheckModel命令来检查E-R图的错误。检查结果分为没有错误、错误和警告三类:错误是必须要改正的,警告(例如,一个实体有外键而无主键)可以改正也可以不改正。若没有错误,则保存此E-R图。至此,“图书信息系统”的概念数据模型CDM已经生成。CDM模型完成的是系统的概要设计,还需要通过PDM模型完成详细设计,并对CDM模型中的E-R图进行检验和修改。有了CDM模型之后,可以利用系统提供的自动转换功能将CDM模型转换成PDM模型,而不需要重新定义。步骤11:选择生成PDM。在Tools菜单中单击GeneratePhysicalDataModel命令,打开物理数据模型设置窗口,如图11所示。GeneratePhysicalDateModel:选中此项,表示生成新的物理数据概念模型。DBMS:选择数据库类型。例如,选择SybaseASAnywhere9。Name:物理数据模型的名称,例如“图书信息系统物理数据模型”。Code:物理数据模型的代码,例如“tsgl_pdm”。在Detail选项卡中,可以进行物理数据模型的细节属性设置。图11物理数据模型设置窗口在Selection选项卡,可以选择概念数据模型中已定义的实体。选择完毕后,单击“确定”按钮,开始生成物理数据模型,如图12所示。图12生成PDM可以利用鼠标拖动实体框和关联线,对PDM图形进行调整,直到图形整齐、美观为止,最后进行保存。从图上可见,PDM与物理建表已经很接近。步骤12:此外,可以通过在File菜单中单击New…命令,在打开的窗口中选择Multi-ModelReport选项,来生成并打印CDM或PDM的各类文档资料。还可以生成创建表、创建索引、创建触发器的程序。2、将PDM模型转换成数据库表打开ODBC数据源管理器在前面的步骤中,物理数据模型创建好了。接下来就是如何把这两张表导入到已知的数据库中。首先我们要新建一个数据库,方法:开始——控制面板——管理工具——数据源(ODBC)——添加,弹出对话框如下:选中SQLServer——完成。弹出对话框:名称自己输入即可,服务器的名称是打开SQLserver数据库后复制单击完成——测试数据源——确定这样就成功的创建好了!接下来,数据库——changecurrentDBMS,弹出对话框:如上图所示,选择microsoftSQLserver2005(自己电脑上所安装的数据库版本!)——确定数据库——generatedatabase——确定——edit——自蓝色部分开始复制到最后——数据库——executeSQL(注意数据库要选刚才建立的test)——connect——在所弹出的对话框里粘贴——run即如下一系列图:接下来,在数据库里(开始菜单-程序-microsoftSQLserver-查询分析器),数据库——系统数据库——master——表——右键,刷新,就出来了新建的表。如下图。四.实验结果CDM图(ER图):PDM图:SQL代码:ifexists(select1fromsysobjectswhereid=object_id('Library')andtype='U')droptableLibrarygoifexists(select1fromsysobjectswhereid=object_id('Unit')andtype='U')droptableUnitgoifexists(select1fromsysobjectswhereid=object_id('book')andtype='U')droptablebookgoifexists(select1fromsysobjectswhereid=object_id('reader')andtype='U')droptablereadergoifexists(select1fromsysobjectswhereid=object_id('return')andtype='U')droptablereturngo/*==============================================================*//*Table:Library*//*==============================================================*/createtableLibrary(Library_Nochar(20)notnull,Library_Addressvarchar(38)notnull,constraintPK_LIBRARYprimarykeynonclustered(Library_No))go/*==============================================================*//*Table:Unit*//*==============================================================*/createtableUnit(Unit_Novarchar(10)notnull,Unit_Addressvarchar(50)null,Unit_Phoneva
本文标题:PowerDesigner数据建模1实验报告
链接地址:https://www.777doc.com/doc-2852135 .html