1)掌握使用Power Designer建模工具绘制E-R图。
2)学会使用Power Designer建模工具生成物理模型图。
3)理解使用建模工具生成SQL Server数据库对应的SQL脚本。
使用Power Designer绘制概念模型E-R图,绘制E-R图的步骤如下。
1)下载、安装、启动Power Designer(简称PD)工具软件。
2)新建概念模型图。概念模型图类似于在上述课程中介绍的E-R图(如图1-23所示),只是模型符号略有不同。在工作空间中单击右键(简称右击),在弹出的快捷菜单中选择“新增”→“文件夹”命令,然后更名为“学生选课管理”。在“学生选课管理”上右击弹出快捷菜单,选择“新增”→Conceptual Data Model命令,出现创建概念模型图界面,如图1-24所示。
图1-23 绘制E-R图示例
3)添加实体。在绘图工具栏中单击“实体”按钮,鼠标指针变成图标形状,在设计窗口的适当位置单击,将出现一个实体符号,在绘图窗口的空白区域右击,使得指针变为正常的箭头形状。然后选中该实体并双击,打开实体属性窗口。其中General选项卡中主要选项的含义为:①Name为实体名,常用中文。②Code为实体代号,一般为英文。③Comment为注释,输入对此实体更加详细的说明。
4)添加属性。不同标准的E-R图中使用椭圆表示属性,在Power Designer中添加属性只需打开Attributes(属性)选项卡,如图1-25所示。
图1-24 创建概念模型图界面
图1-25 Attributes(属性)选项卡
5)添加实体之间的关系。同理,添加课程实体,并添加相应的属性。
可以通过自行操作完成练习。添加上述两个实体之间的关系,如果两个实体间是多对多的关系,建立关系的方法有两种:一种是从绘图工具栏中单击Relationship(关系)按钮 ,直接建立多对多关系;第二种是先添加Association联系对象,再通过两个实体分别与联系对象通过Association Link按钮建立关系,可在Association联系对象上添加额外的属性。
在绘图工具栏中单击Relationship(关系)按钮。单击第一个实体“学生”,按住鼠标左键并拖拽到第二个实体“课程”上,然后释放左键,建立一个默认关系。选中图中定义的关系,双击打开Relationship Properties(关系属性)对话框。在General选项卡中定义关系的常规属性,修改关系名称和代号。
两个实体间的映射基数需要在Details选项卡中详细定义。假定一个学生可以有多门课程的成绩。
6)单击“保存”按钮,保存为“学生选课概念模型图”,文件扩展名默认为“*.cdm”。
7)检查概念模型。选择Tool(工具)→Check Model命令,出现检查窗口。单击“确定”按钮后出现检查结果。如果有错误,将在Result List中出现错误列表,用户可根据这些错误提示信息进行改正,直到出现0-error(s)信息。
8)生成物理模型图。绘出概念模型图并经过项目组和客户讨论后,可进一步选择具体的数据库,生成物理模型图。选择Tool(工具)→Generate Physical Data Model命令,出现PDM Generation Options窗口。单击“保存”按钮,保存为teachingSystem,扩展名默认为“*.pdm”。
9)生成SQL数据库脚本。选择Database→Generate Database命令,在弹出的对话框中输入SQL脚本文件名,单击“确定”按钮,将自动生成对应数据库的SQL脚本。
说明: 生成的SQL Sever脚本只有建表语句,无建库语句(需要人工添加)。验证由PowerDesigner生成的SQL Sever脚本是否可行,可先在SQL Server 2019中建立一个数据库,然后单击“新建查询”,将脚本语句复制到新建查询窗口中,选择刚建立的数据库,单击“执行”,即可建立数据库。
某大学教务管理信息系统常用数据库进行建模,共有6个数据表,其中4个实体表和两个联系表,实体表为:学院表(department)、学生表(student)、教师表(teacher)、课程表(course);联系表为:教师开课表(teacher_course)、学生选课表(student_teacher_course)。通过分析数据表及业务功能,可以得出初步的数据模型图,如图1-26所示。可以用PD软件完成如图1-27所示的E-R图。
图1-26 某高校教务系统数据模型图
图1-27 学生-选课-课程的E-R图
利用上述方法建立学院(department)、学生(student)、教师(teacher)、课程(course)4个实体Entity对象,以及教师开课(teacher_course)和学生选课(student_teacher_course)两个联系Association对象。
具体要求包括添加每个实体的属性,然后添加各个实体之间的关系,绘制完毕后对概念模型图进行检查,选择SQL Server数据库生成物理模型图。最后生成SQL Sever对应的SQL脚本。建立好一个数据库,验证SQL脚本的正确性。
在实验过程中需要注意:PowerDesigner建模工具的使用方法,正确添加每个实体及其属性,正确建立各个实体之间的关系。学生应在教师的指导、检查和帮助下按时完成上机任务。