实验1使用PowerDesigner进行概念模型设计说明_第1页
实验1使用PowerDesigner进行概念模型设计说明_第2页
实验1使用PowerDesigner进行概念模型设计说明_第3页
实验1使用PowerDesigner进行概念模型设计说明_第4页
实验1使用PowerDesigner进行概念模型设计说明_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

..实验1使用PowerDesigner进行概念模型设计实验内容学生信息管理中有如下实体型:学生〔student,包括的属性有学号〔Sno,姓名〔Sname,性别〔Ssex,年龄〔Sage,身份证号〔Sid课程〔course,包括的属性有课程号〔Cno,课程名〔Cname,学分〔Ccredit学院〔department,包括的属性有学院编号〔Dno,学院名称〔Dname教师〔teacher,包括的属性有教师编号〔Tno,姓名〔Tname,性别〔Tsex,年龄〔Tage,参加工作时间〔Tworktime一个学生选修多门课程,一门课程由多个学生选修一个学院有多名学生,一个学生只属于一个学院一门课程可以由多个教师讲授,一个教师可以讲授多门课程一个学院有多名教师,一个教师只属于一个学院一个学院至多有一个正院长,一个正院长只能在一个学院担任正院长职务某课程可以是其他多门课程的先修课程,一门课程至多有一门先修课程student实体General选项卡设置通用属性,Attributes选项卡设置实体包含的属性,Identifiers选项卡设置实体的码,Notes选项卡记录备注信息,Rules选项卡设置规则。General和Attributes选项卡中的内容必须设置,其他内容可以根据需要设置。选择General选项卡,设置该实体的Name属性为student,Code属性与Name属性一致即可。选择Attributes选项卡,设置该实体所包含的属性。Name列设置属性的名称,Code列设置属性的代码,DataType列设置属性的数据类型,Domain列设置属性的域。M和P列设置属性的约束。M列设置属性是强制非空的,属性Sname要求强制非空。P列设置该属性是主键中的属性,属性Sno设置为主键。D列表示该属性被显示。一般在设置实体的属性时,一定要设置实体的主键,如果某个属性被设置为主键中的属性则自动强制非空。Name与Code的区别是:Name供显示使用,Code是之后物理数据模型中表〔或字段的代码。单击Identifiers选项卡,设置实体主、次标识符的定义界面。主标识符指主键,只能有一个,次标识符指其他候选键,可以有多个。主标识符后面的P为选中状态,由于前面已经指定属性Sno为主键,系统会自动创建主标识符并自动命名为Identifier_1。设置属性Sid为候选键。单击工具栏上的AddaRow〔添加按钮,出现一行,系统自动命名为Identifier_2,修改为Sid_u,Name和Code相同即可。设置规则,要求属性Ssex只能取"女"或"男"。在General选项卡中输入规则名为Ssex_r,单击Expression选项卡,输入规则内容。创建course实体按照上面的方法创建course实体。在General选项卡中,设置该实体的Name属性为course,Code属性与Name属性一致即可。Cno为主键,即主标识符。Cname强制非空。创建department实体按照上面的方法创建department实体。在General选项卡中,设置该实体的Name属性为department,Code属性与Name属性一致即可。Dno为主键,即主标识符,Dname为候选键,即次标识符。创建teacher实体按照上面的方法创建teacher实体。在General选项卡中,设置该实体的Name属性为teacher,Code属性与Name属性一致即可。Tno为主键,Tname强制非空,创建规则Tsex_r要求Tsex取值只能是"女"或"男"。设置student和course之间的联系在PowerDesigner中,有Association〔实体间的联系与Relationship〔实体间的关系,二者之间的区别是:前者用于m:n联系、多个实体型之间的联系,在转换为PDM〔物理数据模型时对应一个表〔另外,也用于自身带有属性的1:n和1:1联系,但在转换为PDM时不对应一个表,而是附加属性;后者用于不带属性的1:n和1:1联系,在转换为PDM时附加属性〔1:n在n方附加1方的主键,1:1由DominantRole决定在其中一方附加对方的主键。student和course之间应该使用Association。单击设计元素面板上的代表Association的图标,将鼠标指针指向设计区域的合适位置,单击鼠标左键,在设计区域中创建一个Association,自动命名为Association_1。双击Association_1,出现Association_1的属性设置界面。在General选项卡中设置Name为sc,code与Name相同即可。选择Attributes选项卡,添加Grade属性。单击设计元素面板上的代表AssociationLine的图标,然后将实体student和联系sc连接起来,同样将实体course和联系sc连接起来。设置teacher和course之间的联系参照student和course之间的联系设置teacher和course之间的联系tc,联系自身有两个属性:Location〔授课地点、Term〔授课学期。设置student和department之间的关系在设计元素面板上单击代表Relationship的图标,光标置于department实体,按下左键并从department实体拖动到student实体,此时,在两个实体间创建了一个Relationship。双击student和department之间的关系,在General选项卡设置关系的Name为ds,Code与Name一致即可。在Cardinalities选项卡中设置关系类型和每个方向上的基数〔Cardinality。设置关系类型为One-Many,意思是由Entity1到Entity2为One-Many。由于创建该关系时,鼠标是由department拖动到student,因此,Entity1指department,Entity2指student,也可以在General选项卡中重新设置。在Cardinalities选项卡中,关系的每个方向都包含一个分组框,每个分组框中包括下列属性:Rolename:用来描述该方向关系的作用,例如,在departmenttostudent分组框中可以填写have,而在studenttodepartment分组框中可以填写belongto。Dependent:用来表示该方向两个实体之间的依赖关系,只有子实体依赖于父实体。Mandatory:表示该方向具有强制特性。Cardinality:表示该方向上关系的基数。例如,对于departmenttostudent,基数指对于department中的一个院系在student中可能存在的最大与最小实例数。现实世界中,一个院系可以拥有多个学生,也可以没有任何学生,所以departmenttostudent方向的基数应选择"0,n",不设置Mandatory;而一个学生必须属于一个院系,并且只能属于一个院系,所以studenttodepartment方向的基数应选择"1,1”Dominantrole只在一对一联系中才进行设置。设置teacher和department之间的关系td_belongto参照student和department之间的关系,创建teacher和department之间的关系td_belongto,由department到teacher是"1:n"关系。在General选项卡设置关系的Name为td_belongto,Code与Name一致即可。Rolename:在departmenttoteacher分组框中可以填写have,在teachertodepartment分组框中可以填写belongto。Cardinality:现实世界中,一个院系可以拥有多个教师,也可以没有任何教师,所以departmenttoteacher方向的基数应选择"0,n",不设置Mandatory;而一个教师必须属于一个院系,并且只能属于一个院系,所以teachertodepartment方向的基数应选择"1,1”设置teacher和department之间的td_manage关系创建teacher和department之间的关系td_manage,是"1:1"关系。在General选项卡设置关系的Name为td_manage,Code与Name一致即可。Rolename:在departmenttoteacher分组框中可以填写managedby,在teachertodepartment分组框中可以填写manage。Cardinality:现实世界中,一个院系只能而且必须有一个院长,所以departmenttoteacher方向的基数应选择"1,1”Dominantrole:只有在一对一联系中出现,表示支配方向。所选择的支配方向在生成PDM时产生一个参照。例如,选择teacher->department,在生成PDM时,将在department表中增加tno属性,存储某院系的院长编号,而这个属性是department表的一个外键,参考teacher表,结合Cardinality中departmenttoteacher方向的基数"1,1”设置course实体集的自反联系course_self假设某门课可以是其他多门课的先行课,而一门课如果有先行课则只能有一门先行课,这样course实体集内部存在"1:n"关系。在设计元素面板上单击代表Relationship的图标,光标置于course实体,按下左键并在course实体上拖动一段距离,此时,在course实体上创建了一个Relationship。右击鼠标,进入对象编辑状态。双击course自身的关系,在General选项卡设置关系的Name为course_self,Code与Name一致即可。Rolename:在上面的coursetocourse分组框中可以填写pioneer,在下面的coursetocourse分组框中可以填写succeed。Cardinality:现实世界中,某门课可能不是先行课,也可能是多门课的先行课,所以,上面的coursetocourse方向的基数应选择"0,n";而一门课可以没有先行课,如果有先行课则只能有一门,所以,下面的coursetocourse方向的基数应选择"0,1”至此,根据上面E-R图创建的CDM已经完成。PowerDesigner自动生成PDMxe"2780A.1.03.05.299.1"PowerDesigner的PDM可以描述逻辑结构和物理结构,根据CDM生成PDM。检查CDM的正确性在CDM设计界面上,选择Tools|CheckModel,检查CDM的正确性,如果存在错误,请检查并更正。将CDM转换为PDM在CDM不存在错误〔警告不影响模型转换的情况下,可以将CDM转换为PDM。在CDM设计界面上,选择Tools

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论