数据库设计工具-PowerDesigner

学习目的

  1. 了解数据库设计工具-PowerDesigner的安装
  2. 了解如何使用PowerDesigner进行数据库表的设计
  3. 掌握 结合三范式来使用PowerDesigner设计数据库表

一、PowerDesigner安装

  1. 找到PowerDesigner.exe安装应用程序,双击打开(该应用程序有点大,需要等待)


    PowerDesigner安装程序.png
  2. 双击后自动加载安装程序 --> 点击next


    开始安装.png
  3. 开始选择安装的配置 --> 直接选择Trial --> 点击next

  • Trial:十五天试用版;
  • Local License:本地许可证(需要注册码);
  • Standlone Seat- Served:独立版;
  • Floating Seat- Served:浮动版;


    选择安装版本.png
  1. 选择地区 --> 选择香港"HongKong" --> 勾选协议"I agree" --> 点击next


    选择地区.png
选择HongKong.png
  1. 选择安装目录(默认C盘,不建议修改)


    选择安装目录.png
  2. 选择需要安装特征 --> (直接跳过)点击next


    选择安装特征.png
  3. 选择允许安装的用户文件 --> (直接跳过)点击next


    选择安装的用户文件.png
  4. 给即将安装的程序文件夹命名 --> (直接跳过)点击next


    程序命名.png
  5. 显示安装的信息 --> (直接跳过)点击next


    安装信息浏览.png
  6. 开始安装 --> 点击next --> 等待安装 --> 点击Finish完成


    安装完成.png
  7. 安装完成后,不需要注册,使用pj

  8. 将pdflm16.dll应用程序 --> 复制 --> 到刚刚的安装目录中(默认C盘Program Files (x86) --Sybase目录-- PowerDesigner目录下) --> 粘贴 --> 替换pdflm16.dll应用程序


    pj程序.png
复制并替换pdflm16.dll应用程序.png

二、PowerDesigner的使用

  1. 打开PowerDesigner(在应用程序中打开,可创建快捷方式)


    打开PowerDesigner.png
  2. PowerDesigner使用配置 --> 选择创建新模块"Create Module"

  • Create Module:创建新模块 / 新模型;
  • Create Project:创建新工程 / 新项目;
  • Open Module or Project:打开一个已存在的模块或工程;
  • Example:
PowerDesigner设置.png
  1. 选择具体的模块类型 --> 选择Module Type --> 选择物理建模Physical Data Module -->


    选择模块类型.png
  2. 给模块命名(Module name,一般为开发的项目名)--> 选择对应的数据库管理系统(DBMS)--> 点击Ok --> 完成物理模型的创建


    选择数据库.png

    示例.png
  3. 完成数据库物理建模 --> 正式开始设计 --> 按住ctrl+鼠标滚动键 --> 放大、缩小 主面板表格


    设计的主页面.png
  4. 主面板的表格设计 --> 点击右侧"Physical Diagram"下第二个"表格"图表 --> 将图标拖到任意一个 主面板表格


    主面板表格设计.png

    方法后的主面板表格.png
  5. 设计物理表格 --> 按住ctrl+鼠标滚动键 --> 放大 主面板表格 --> 双击 拖进来的"表格"图标 --> 填写好表格基础信息 --> 点击apply应用(注意查看表格的变化)-->

  • 设计表的基础属性:包括表名(物理模型表名 和 真实数据库表名)


    设计表的基础属性.png

    示例.png
  1. 设计表的字段 --> 点击Columns(设置字段列) --> 填写字段信息 --> 点击Apply应用(注意查看表格变化)--> 点击OK(完成表的基础设计)
  • 设置表的字段列:包括列的名称(物理模型列名Name,真实数据表列名Code)、字段数据类型、字段值长度、主键(P)、外键(F)


    设置表的字段列.png
  1. 后续:设计表的索引 --> 点击Indexes,设计表的主键和外键 --> 点击Keys

  2. 查看物理模型设计表 对应的sql语句 --> 双击建模好的表格 --> 点击preview


    查看建表的sql语句.png
  3. 面板主页查看物理模型表的结构 --> 左侧栏


    表的结构.png
  4. 将设计的表格导出

  • 以文件形式导出(.pdm文件),设计完直接按ctrl+s保存


    文件形式保存物理模型表.png
  • 以sql脚本形式导出:双击建好的表格 --> 点击preview --> 点击保存


    sql脚本保存该表.png

    sql脚本.png
  1. 退出后软件("否"不保存工作区)


    保存工作区.png
  2. --> 打开外部的物理模型文件(.pdm文件)--> 双击保存到外部的.pdm文件 --> 打开后点击workspace --> 点击Tables --> 点击表名右键 --> Find in Diagram(完成打开)


    打开外部pdm文件.png

三、数据库设计三范式

3.1 第一范式

  1. 关键点
  • 必须有主键:每一个数据库在设计时都必须要有主键字段;
  • 字段原子性不可再分:每一个字段的设计不能概念化、笼统化,需要具体的实现,且不可拆分(如联系方式包括了电话和邮箱,不能将电话和邮箱设计在同一个字段中,而是拆分成 '电话' 和 '邮箱' 两个字段)

3.2 第二范式(多对多)

  1. 关键点
  • 第一范式:第二范式的设计在第一范式的基础之上,必须满足第一范式的要求才能使用第二范式
  • 完全依赖:非主键字段 必须完全依赖 主键字段,主要适用于复合主键(一个主键由多个字段联合主键),每一个非主键字段必须完全依赖复合主键,不能只依赖 组成复合主键中的其中一个字段。
    (如表table有复合主键三个字段共同构成的一个主键,非主键字段F不能 只依赖A 或 只依赖B 或 只依赖C,而是必须要完全依赖整个复合主键)
  1. 设计本质
    解决事物的多对多关系模式,一个实体A可以被多个B关联,一个实体B也可以被多个A关联。
    (如学生-老师关系:一个学生-多个老师教学,一个老师-教学多个学生)
  2. 设计技巧
    多对多,三张表,关系表,两外键。将每一个实体单独抽取出来作为一张表,设计一张关系表存储实体的关系,且每一个实体作为关系表的外键。

3.3 第三范式(一对多)

  1. 关键点
  • 第一范式:第三范式的设计前提必须满足第一范式;
  • 第二范式:第三范式的设计前提同时也必须满足第二范式;
  • 不能传递依赖:同一张表内,非主键字段必须直接依赖主键字段,而不能通过"中介"来产生间接依赖主键。
    (如表table拥有主键A,非主键字段B依赖A,而又有另一个非主键字段C依赖B,从而产生了非主键字段C 传递性/间接 依赖主键字段A)
  1. 设计本解决事物的一对多关系模式,一个实体A可以对应多个实体B的主体--主键多个实体B共同对应一个主体A
    (如班级-学生表:一个班级-多个学生,一个学号-一个学生-班级是外键)

  2. 设计技巧
    一对多,两张表,添外键。将主键的"中介"传递者和非直接依赖独立出来到一张表中,主键作为一张主体表,而中介实体表中拥有主体表的主键字段作为外键字段。
    (班级表作为主键主体表,学生表的学生依赖学号<班级作为外键>
    由班级-学号-学生,转变成班级-学号,学号-学生-<外键:班级>)

四、PowerDesigner设计数据库表

你可能感兴趣的:(数据库设计工具-PowerDesigner)