【PowerDesigner】一款超好用的E-R图工具,快速构建出高质量的数据库结构,提高开发效率和代码质量

news/2024/10/17 22:13:30/

在这里插入图片描述

  • 博主简介:努力学习的大一在校计算机专业学生,热爱学习和创作。目前在学习和分享:数据结构、Go,Java等相关知识。
  • 博主主页: @是瑶瑶子啦
  • 所属专栏: Mysql从入门到精通
  • 近期目标:写好专栏的每一篇文章

在这里插入图片描述

文章目录

  • 一、什么是E-R图?
  • 二、强大的powerDesigner工具
    • 2.1:它的创始人
    • 2.2:工具介绍
  • 三、使用教程:
    • 3.1:概念数据模型(CDM):conceptual data model
    • 3.2:物理数据模型(PDM):pyshical data model
    • 3.3:CDM和PDM对比
    • 3.4:自动生成SQL语句
    • 3.5:一对多的关系
  • 四、总结

一、什么是E-R图?

E-R图,也称ERD(Entity-Relationship diagram),实体关系图(这里的实体其实就是指数据库中的表table)。用于设计数据库结构,来设计系统范围内的实体,以及之间的关系。

下面是一张用powerDesigner设计的ERD:
在这里插入图片描述

二、强大的powerDesigner工具

2.1:它的创始人

powerDesigner虽然是德国的SAP公司1开发的数据建模元数据管理工具。但是它的创始人是中国人:王晓昀。源于他自己毕业后从事软件开发工作,想找到一个很好的建模工具,于是他自己开发了一款,也就是PowerDesigner
在这里插入图片描述

2.2:工具介绍

百度百科:PowerDesigner是Sybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。 利用PowerDesigner可以制作数据流程图、概念数据模型、物理数据模型,可以生成多种客户端开发工具的应用程序,还可为数据仓库制作结构模型,也能对团队设备模型进行控制。 它可与许多流行的数据库设计软件,例如:PowerBuilder,Delphi,VB等相配合使用来缩短开发时间和使系统设计更优化。

三、使用教程:

file->new model:创建模型
在这里插入图片描述

  • 说明
    • 对于数据库模型设计,我们主要用到以上两个模型;
    • 概念数据模型,是我们主要使用的模型设计功能。
    • 物理数据模型,可以由概念数据模型直接转换而来。为什么叫物理数据模型呢?因为它是有实际意义的,对于不同数据库,我们的概念模型几乎是一样的,但是落到实际,不同数据库的模型定义又稍有不同,这个实际的数据模型,就是物理数据模型,它是依附于具体数据库的。

3.1:概念数据模型(CDM):conceptual data model

上面步骤完成后,创建了概念数据模型文件,我们就可以绘制ER图啦!

  • 认识页面
    在这里插入图片描述在这里插入图片描述
  • 创建一个实体
    在这里插入图片描述
  • 双击这个实体,对它进行编辑
    • General:命名+是否生成物理模型
      在这里插入图片描述

    • Arributes: 向该实体中添加属性:
      在这里插入图片描述
      在这里插入图片描述

    • 修改主键名:
      在这里插入图片描述

    • 点击save,就会生成一个后缀为.cdm(concenptual data model)的文件

3.2:物理数据模型(PDM):pyshical data model

  • 根据概念数据模型自动生成物理数据模型:tools->generate physical data model
    在这里插入图片描述

  • 给该物理模型命名
    在这里插入图片描述

在这里插入图片描述

该物理模型图是基于数据库的,可以和前面生成的概念模型图对比一下,还是有不同的

3.3:CDM和PDM对比

  • CDM:概念数据模型,本质就是ERD(实体关系图),和数据无关
  • PDM:物理数据模型。由概念数据模型产生,和数据库紧密相关

3.4:自动生成SQL语句

根据上面,物理数据模型是和数据库紧密相关的,它反映了实体及其关系。

如果能根据物理数据模型生成SQL语句,即把这物理数据模型映射到实实在在的数据库,岂不是更爽!

YES( •̀ ω •́ )y,强大的poweDesigner提供了该功能:

注意,在这之前需要把生成的物理模型.pdm文件保存

  • database->generate database

在这里插入图片描述

  • 点击确定和应用即可生成sql文件:
    在这里插入图片描述
    在这里插入图片描述

3.5:一对多的关系

我们再创建一个用户实体:

一个用户,可以发表多篇笔记,那么从用户到笔记,这就是一对多的关系。如何标识这种关系呢?

注意,下面操作还是基于概念模型,置于对应的物理模型和sql代码?上面已经详细讲过,这里不再赘述

  • 选择palette面板上电relationship,从用户指向笔记
    在这里插入图片描述
  • 双击关系,即可进行编辑:
    • 给关系命名:
      在这里插入图片描述
    • 设置基数:cardinality
      在这里插入图片描述
      • 概念模型:
        在这里插入图片描述
      • 物理模型
        在这里插入图片描述

四、总结

以上就是关于PowerDesigner这款工具的介绍和简单使用教程。

可以看到,使用PowerDesigner,我们可以轻松的绘制ER图(概念数据模型),并且生成对应的物理概念模型和对应的SQL脚本。大大提高数据库结构设计的效率。

如果对你有用,还请:💭评论+👍🏻点赞+⭐收藏+➕关注

在这里插入图片描述

  • Java岛冒险记【从小白到大佬之路】

  • GORM框架学习

  • Mysql从入门到精通

  • Go语言核心编程

  • LeetCode每日一题–进击大厂

  • 算法

  • C/C++

  • 数据结构


  1. SAP指的是德国SAP公司,全称为Systems, Applications, and Products in Data Processing,即数据处理中的系统、应用和产品。SAP是全球领先的企业管理软件公司之一,提供一系列的企业应用软件解决方案,包括企业资源规划(ERP)、供应链管理(SCM)、客户关系管理(CRM)、人力资源管理(HRM)等。SAP公司的软件产品广泛应用于全球各个行业和领域,包括制造业、零售业、金融业、能源业、医疗保健等。SAP公司总部位于德国沃尔多夫市,是欧洲最大的软件公司之一,同时也是全球最大的企业管理软件供应商之一。
    PowerDesigner的历史比较复杂,最初是由法国软件公司SILVERRUN开发的,后来被Sybase公司收购。随着Sybase公司被SAP收购,PowerDesigner也成为了SAP公司旗下的产品。因此,PowerDesigner既有Sybase公司的历史,也有SAP公司的归属。但是,从现在的角度来看,PowerDesigner已经是SAP公司的产品了,它是SAP PowerDesigner的一部分,由SAP公司负责开发和维护。
    欢迎在评论区交流和留下你的想法和建议 ↩︎


http://www.ppmy.cn/news/59361.html

相关文章

YOLOv5 训练自己的数据集

🍨 本文为🔗365天深度学习训练营 中的学习记录博客 🍖 原作者:K同学啊|接辅导、项目定制 ● 难度:夯实基础⭐⭐ ● 语言:Python3、Pytorch3 ● 时间:5月1日-5月6日 🍺要求&#xff1…

C语言atoi函数详解

一、atoi()基本概念 atoi是C/C语言中一个常用的字符串转整数的函数,其原型定义在stdlib.h头文件中。它的作用是将一个字符串表示的数字转换为对应的整数。 函数原型: int atoi(const char* str); 参数: str&#x…

Vue电商项目--vuex模块开发

vuex状态管理库 vuex是什么? vuex是官方提供的一个插件,状态管理库,集中式管理项目中组件共有的数据。 切记,并不是全部的项目都需要Vuex,如果项目很小,完全不需要vuex,如果项目很大,组件很多&#xff0…

【python】NameError: No such file or directory 问题解决

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 1. 问题 最近有小伙伴经常问到这个报错,今天来分享一下具体怎么解决。 [Errno 2] No such file or directory: ./mnist_image_label/mnist_train_jpg_60000.txt这个没有查找到子文件或者子文件夹的问题 2. 解决…

【华为OD机试 2023最新 】简单的自动曝光、平均像素值(C语言题解 100%)

文章目录 题目描述输入描述输出描述备注用例题目解析代码思路C语言题目描述 一个图像有n个像素点,存储在一个长度为n的数组img里,每个像素点的取值范围[0,255]的正整数。 请你给图像每个像素点值加上一个整数k(可以是负数),得到新图newImg,使得新图newImg的所有像素平均…

【Python习题集4】字符串与正则表达式

字符串与正则表达式 一、实验内容二、实验总结 一、实验内容 1.输人一个字符串,将该字符串中下标为偶数的字符组成新串并通过字符串格式化方式显示。 (1)源代码 x input("请输入一个字符串:") y x[::2] print("下标为偶数的字符组成的新串为&…

【机器学习】决策树如何实现回归

【机器学习】决策树如何实现回归 文章目录 【机器学习】决策树如何实现回归1. 介绍2. 回归树的构建方法3. 递归二分法4. 回归树的剪枝5. 总结参考 1. 介绍 在 https://blog.csdn.net/qq_51392112/article/details 中,我们详细介绍了决策树基本内容:如何…

【模拟IC学习笔记】 负反馈系统的稳定性

反馈方程 输出方程 误差方程 环路增益 定义:当输入电压接地、并将环路断开时,所计算的增益就是环路增益 时(幅度1,相位-180)电路稳定在电源或低状态或在电源和地之间振荡。 分析稳定性时是对环路增益进行分析,通过环…