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