01-项目介绍-环境搭建
1. 项目介绍
2. 环境搭建
3. 数据库建模
设计工具:power designer
Important
反范式查询性能更好。
外键影响性能,互联网开发数据量大,数据库一般不用外键。通过前端和后端代码逻辑校验。
3.1. 概念模型 CDM
-
是什么?
- 概念模型,是描述实体之间关系的图形。又叫做 ER 图。
-
为什么用 ER 图?
- 实际开发过程,项目立项的时候,DBMS(MySQL/Oracle/SQL Server/DB 2/Sybase)还没确定,不能直接基于数据库写建表语句。可以先建立概念模型,DBMS 确定后,直接转化建表语句。
-
怎么画
- 列实体,把原型图、需求文档的实体(名词)列出来。
- 填属性,根据原型图、需求文档,设置实体的属性。
- 基本属性,一般看表单的输入框、文本框、日期选择框。
- 关联属性,一般看页面的下拉框
- 辅助属性,状态、创建时间、更新时间字段。
- 画关系,画出实体之间的关系。
- 一对一,常见于:垂直表的拆分、冷热数据的划分、表的大字段拆到辅助表里。例如:商品和商品详情表。
- 一对多,常见于:有主外键关系的实体(主表明细表、业务出现数据动态变化的下拉框时)。例如:一个保险有多个分类。
- 多对多,业务交叉相互关联的时候。例如:用户和角色,一个用户可有多个角色,一个角色可以包含多个用户。
概念模型可以转物理模型。
3.2. 物理模型 PDM
- 是什么?
- 描述表之间关系的图形。
- 为什么?
- 它可以直接获取整个库的 sql 语句(能直接创建整个数据库的表和关系)
- 怎么画?
- 客户确定了 DBMS 后,直接 CDM 转 PDM。
- 开发之前,就确定了 DBMS,可以直接画 PDM。
3.3. 案例分析
人员组织架构模块,用来管理人员。涉及到:机构、部门、角色、权限、人员。
- 列实体,机构、部门、角色、权限、人员
- 填属性,基础、关联、辅助属性。
- 机构,机构ID,名称,状态
- 部门,部门ID,名称,状态
- 角色,角色ID,名称,状态
- 权限,角色ID,名称,状态
- 人员,人员ID,姓名,性别,... 状态
- 画关系
- 一个机构有多个部门,1:N
- 一个部门多个人员, 1:N
- 一个角色多个权限, 一个权限可以给多个角色,N:N
- 一个人多个角色, 一个角色可有多个人,N:N
实操:
power design 设置
power designer 安装
-
选择中文。
-
去除 study videos

-
勾 general; prefercen; notation

- 打开 power designer 的欢迎界面,创建模型,选择 Categories -> Infomation -> Conceptual Data -> 填写Model Name -> ok


- 设置下;r-rise;两个 unicode 都去掉

-
问题,画关系的左右顺序,有影响吗?
- 实体关系又影响。
- 关联关系没影响。
-
概念模型转物理模型
- cdm- > tool -> generatro pdm

- 物理模型
- 可双击物理模型,看语句,设置自增等。
- 物理模型生成 sql:database - > generate sql (整个库的表语句)

