数据库设计
来源:互联网 发布:网络运维绩效考核 编辑:程序博客网 时间:2024/06/05 03:39
引入
需求分析 - 需求分析师 -》 原始需求- > 抽取业务模型 图书模型:图书名称,版本号,作者 学生模型: 学号,学生姓名 手机号码 ...... 角色:学生 老师,图书管理员 《需求说明书》 需求设计 - 概要设计: 抽取实体:业务模型 -> 实体模型(java 类 c++类)内存 class Book{ name, bookNo,author } 数据库设计: 业务模型/实体模型 - > 数据模型 (硬盘) 数据库表设计 问题: 如何设计? 详细设计 类详细,属性和方法
三大范式
设计原则: 建议设计的表尽量遵守三大范式。 第一范式: 要求表的每个字段必须是不可分割的独立单元 student : name -- 违反第一范式 张小名|狗娃 sutdent : name old_name --符合第一范式 张小名 狗娃 第二范式: 在第一范式的基础上,要求每张表只表达一个意思。表的每个字段都和表的主键有依赖。 employee(员工): 员工编号 员工姓名 部门名称 订单名称 --违反第二范式 员工表:员工编号 员工姓名 部门名称 订单表: 订单编号 订单名称 -- 符合第二范式 第三范式: 在第二范式基础,要求每张表的主键之外的其他字段都只能和主键有直接决定依赖关系。 员工表: 员工编号(主键) 员工姓名 部门编号 部门名 --符合第二范式,违反第三范式 (数据冗余高) 员工表:员工编号(主键) 员工姓名 部门编号 --符合第三范式(降低数据冗余) 部门表:部门编号 部门名
0 0
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- 数据库设计
- error C2039: “sort”: 不是“std”的成员
- Maven 常用命令收集
- 当打开Delphi7,出现“borland license information was found,but it is not valid for delphi”的错误,无法运行的解决方法
- 创建兼容 IE/FireFox 的 event 及 event 的 srcElement、fromElement、toElement 属性
- UIAlertView 基础篇
- 数据库设计
- Radio开发新功能
- cas系列(二)--cas单点登录配置
- 如何使用OpenCV实现基于标记的定位(为什么对标记检测能够实现定位)
- ORA-01789: query block has incorrect number of result columns
- 重写QWidget关闭时触发的事件
- Android 自定义 按当前view的宽高进行矩形移动内容图
- UVALA 4329 - Ping pong 树状数组+组合原理
- LeetCode 154 Find Minimum in Rotated Sorted Array II