使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

思考构图大小及范围

首先,我们大致的写出要建的几张表,并自定义其Code(所谓Code其实就是自定义一个字段名,因为SQL语句不能由中文)
我们可以将不同的表按照不同的类型分开,这样一个类型的表可以一起建并且相互之间的关系不会弄混

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

制作概念模型

我们建立管理员表、老师表、学生表,起初每张表的属性没有必要填的过于全面,我们开始要注重的是表之间的关系,表的属性可以在后面添加
1、建第一类表
老师和学生之间是多对多的关系(n:n)
学生和管理员之间是多对多的关系(n:n)
管理员和老师之间是多对多的关系(n:n)

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

2、建第二类表,并完善一、二类表相互之间的关系
班级和专业之间是多对一的关系(n:1)
专业和学院之间是多对一的关系(n:1)

学生和班级之间是多对一的关系(n:1)
学生和专业之间是多对一的关系(n:1)
学生和学院之间是多对一的关系(n:1)
老师和学院之间是多对一的关系(n:1)
管理员和学院之间无关系

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

3、建第三类表,并完善类表相互之间的关系
开课和老师之间是多对多的关系(n:n)
开课和管理员之间是多对多的关系(n:n)

选课和学生之间是多对多的关系(n:n)
选课和管理员之间是多对多的关系(n:n)

课程和学生之间是多对多的关系(n:n)
课程和老师之间是多对多的关系(n:n)
课程和管理员之间是多对多的关系(n:n)

成绩和学生之间是多对多的关系(n:n)
成绩和老师之间是多对一的关系(n:1)
成绩和管理员之间是多对多的关系(n:n)

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

4、建第四类表,并完善类表相互之间的关系
公告和老师之间是多对一的关系(n:1)
公告和管理员之间是多对多的关系(n:n)

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

属性的添加

给每一张表添加属性
其中name(名字)
code(数据库中的字段名)
Data Type(数据类型)
length(数据类型的长度)
M:Mandatory 是否为必填项 即非空
P:Primary Identifer 是否为主键
D:Displayed 是否可见

每一张表的主键,都不允许被其它任何一张表作为属性使用 学生表

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作 老师表 使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作 管理员表 使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

班级表
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
专业表
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
学院表
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

开课表
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
选课表
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
课程表
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
成绩表
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

公告表

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

概念模型整体构图:
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

模型检测

→ 工具 → 【Check Model】
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
出现 [Check Model Parameters] 对话框。
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
运行后,警告属于正常现象
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

生成物理模型

→ 工具 → 【Generate Physical Data Model】

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

物理模型整体构图:
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作
pk: 主键
fk: 外键

生成数据库

→ 数据库 → 【Generate Database】
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

生成的sql语句如下:
使用PowerDesigner搭建学生选课管理系统(学生老师管理员一体系结构)由基础设计至数据库生成(SQL语句源代码的生成)全过程实例操作

工作空间、概念模型、物理模型、sql源代码:
链接:https://pan.baidu.com/s/1O0dLB3km5h2xN045Go2qbA
提取码:ukkp