数据库前后端交互 入门教程一 PowerDesigner的使用

294 阅读5分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

数据库前后端交互 入门教程一

前言

  • 分两篇博客,以学生管理系统为例子,实现前后端交互.以下涉及得到一些软件会从安装开始介绍(下载慢可以使用我的链接下载相关软件链接提取码:2580 )
  • 仅供参考入门学习基本操作,代码部分还是得自己学
graph LR
A[数据库设计] -->B(PowerDesign)
A[数据库设计] -->K(Navicat for MySQL)
B[PowerDesign] -->C(概念模型)
B[PowerDesign] -->D(物理模型)
E[前后端交互] -->F(eclipse)
E[前后端交互] -->G(Tomcat)
E[前后端交互] -->H(MySQL驱动)
E[前后端交互] -->I(Bootstrap)
E[前后端交互] -->J(Servlet)

数据库设计步骤

一、数据需求分析

​ 1.哪些数据要入库

二、设计逻辑模型-CDM(ER图)

  1. 确定系统中的实体

  2. 确定实体关系(1-1,1-N,N-N,强制关系和非强制关系)

  3. 规范化

    ​ 面试题:工程项目中能达到的最高级是3NF

三、设计物理模型-PDM

  1. 视图
  2. 索引
  3. 反规范化

四、生成数据库

五、生成测试数据

六、生成数据库设计报告

下面以数据库设计步骤为例,使用PowwerDesign设计一个学生管理数据库

使用PowerDesign设计数据库

PowerDesigner软件是创建数据库快捷便利的可视化工具,可以帮助我们快速生成数据库

一、新建CDM模型

1.启动PowerDesign

2.新建一个概念图

flie-New Model-Model types-Conceptual Diagram-OK

在这里插入图片描述

3.Toolbox这里只使用实体与关系按钮

在这里插入图片描述

二、设计逻辑模型(概念模型)-CDM

2.1设计系统中的实体

在Toolbox中点击建立实体,先建立六个实体.然后双击实体,分别填写实体信息.这里以学生为例子

先设置General中的Name(一般以汉字命名)、Code(必须以英文命名)、Comment(备注)

在这里插入图片描述

之后设置“学生”实体的属性

在这里插入图片描述

code 在数据库中的字段名

Length 数据类型长度

Data Type 数据类型

M: Mandatory强制属性,表示该属性必填,不能为空

P: Primary Identifer 是否是主标识符,表示实体唯一表示符

D: Displayed 显示出来,默认勾选

其余五个操作同上

班级实体 在这里插入图片描述 在这里插入图片描述

院系 在这里插入图片描述 在这里插入图片描述

专业 在这里插入图片描述

在这里插入图片描述

跟踪记录 在这里插入图片描述 在这里插入图片描述

就业单位 在这里插入图片描述 在这里插入图片描述

六个实体创建完成后是这个样子(“#”和“_"代表主标识,”*“代表强制不可为空,”⚪“代表显示改属性)

image-20211222211103011

2.2确定实体关系

单击工具栏选择”image-20211223111502618“按钮,这里以学生班级为例,其他同理

首先将学生与班级实体连接,双击关系线条

image-20211222211614994

与新建实体同理,在关系中Name以中文命名,Code以英文命名 在这里插入图片描述

强制关系表示:表示一个班级肯定有学生,学生一定在班级中。

Cardinalities下面的英文即属性设置的解释:每一个学生有且仅有一个班级,每一个班级一定有多个学生。 在这里插入图片描述

班级_专业 在这里插入图片描述 在这里插入图片描述

院系_专业 在这里插入图片描述 在这里插入图片描述

学生_跟踪记录 在这里插入图片描述 在这里插入图片描述

就业单位_学生

学生不一定就业,所以这里没有强制关系。 在这里插入图片描述 在这里插入图片描述

五个关系建立完成后如图

要找==直接关系==,学生和班级有关系,但是学生和院系没有关系 在这里插入图片描述

建立好实体后,发现有不同的线条。“1.小三角”表示关系中的N,即“1-N”,“2.”虚线表示非强制关系,“3.”实线表示强制关系

完成第二部分设计逻辑模型CDM后,可以直观的看出各个实体内及实体间属性的关系,PowDesign太友好了。接下来第三、四步可以帮助我们直接生成数据库SQL文件

三、设计物理模型-PDM

Tool-Generate Physical Data Model(Generate Conceptual Data Model可以将物理模型转为概念模型) 在这里插入图片描述

选择对应版本的MySQL(5.5版本也选5.0) 在这里插入图片描述

在Detail中将“Check model”勾选掉,之后点击确定 在这里插入图片描述

下图就是生成的物理模型,检查是否有丢失的实体。代表主键,代表外键。箭头表示关系中“1→N” 在这里插入图片描述

双击实体,在Columns中可以修改属性,一般默认生成的就是对的,如果有需要修改的在这里修改。

P:primary主键,F:foreign key外键 , M:mandatory强制性的,代表不可为空

扩展: 双击图中位置,Identify打√表示按学号自增排序 在这里插入图片描述

在这里插入图片描述

四、生成数据库

在物理模型界面,点击菜单栏Database-Generate Database(物理模型与概念模型菜单栏不一样,一定要先打开物理模型) 在这里插入图片描述

自定义文件路径,去掉"Check model",点击确定。路径下".sql"即生成的数据库 在这里插入图片描述

五、生成测试数据

与生成数据库同理,在物理模型界面,点击菜单栏Database-Generate Test Data 在这里插入图片描述

自定义文件路径,去掉"Check model",点击确定。路径下".sql"即生成的数据库测试数据 在这里插入图片描述

六、生成数据库设计报告

点击菜单栏Report-Generate Report,可以快速生成一份中文版word报告,帮我们减少项目报告的工作量 在这里插入图片描述 在这里插入图片描述

七、导入数据库

这里我以MySQL 5.0和Navicat for MySQL为例子导入上面生成的.sql和.sws文件

首先新建一个连接,右击左侧空白处,新建连接。这里用户名和密码一定要和MySQL配置相同。如果忘记密码可以参考我这篇Mysql5.0 修改密码_鬼才小张同学的博客-CSDN博客

在这里插入图片描述

之后打开该连接,右击新建数据库 在这里插入图片描述

右击新建的数据库,分别运行第四五步保存的.sql文件,不要重复运行,比如运行了一遍测试数据,再次运行就会报错,因为当前数据库已经存在相同的数据。 在这里插入图片描述

如果是第一遍运行有运行错误,在文件夹中右击报错的.sql以记事本打开,复制全部,在Navicat for MySQL中点击查询-新建查询,粘贴sql内容,点击运行,查看下方报错,根据报错去修改 在这里插入图片描述

之后在空白处右击,刷新。就可以看到新建的数据库了。随便点一个实体,可以看到数据库的测试数据,说明该数据库工作正常 在这里插入图片描述

总结

PowerDesigner软件是创建数据库快捷便利的可视化工具,可以帮助我们快速生成数据库。通过设计CDM模型和PDM模型,辅助生成SQL文件,在Navicat中建立需要的数据库。下一篇介绍前后端交互。