操作环境

  • PowerDesigner16.5
  • MySQL 5.7.17

建立数据库模型

  1. 新建模型
    • File->New Model
  2. 录入模型信息
    • Moldel types->Physcial Data Model->Physcial Diagram,选择MySQL 5.0,这里的Model name相当于数据库名
  3. 建立模型下物理图和表
    • 左侧Object Brower双击PhysicalDiagram_1前面的图标打开PhysicalDiagram_1,右侧ToolBox中Physical Diagram点击Table,在对应物理图下建立表

一个物理数据模型(Physicial Data Model,数据库)下有多个物理图(Physical Diagram,数据库下不同业务或用途的表在PowerDesigner中的划分),一个物理图(Physical Diagram)下有多个表(Table);一个表下有多个列(Column),所有列,表和物理图都属于该物理数据模型

常见使用

  • 列属性显示不完全
    • 双击表,Columns选项卡点击漏斗笔图标,选择Identity(自增),Precision(精度,小数点后保留位数,一般金额decimal用到),Mandatory(强制,不能为空),Primary(主键,唯一,不能为空),Comment(列备注),Default Value(默认值)
  • 不让code(数据库字段名)跟着name(PowerDesigner中code的显示名,不能重复)变化
    • 全局,Tools->General Options->Dialog->Name to Code Mirroring (去掉)
  • 添加表引用
    • 右侧ToolBox中Physical Diagram点击Reference,如果A表引用B表,则将线从A拉到B即可
  • 生成数据库表
    • 菜单Database->Generate Database,Preview可以预览SQL
  • 在生成sql时不包含drop语句
    • 菜单Database->Generate Database->Options标签页->Drop table(去掉)
  • 指定数据库引擎InnoDB和编码方式
    • Database->Edit Current DBMS...->Script->Objects->Create->Value文本框内创建表的右括号后边加上ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci,如果提示无法写入,用管理员运行PowerDesigner