数据库设计
1. 约束
* 概念:约束表中数据
* 分类:非空、唯一、主键(非空且唯一)、默认值、外键、检查(mysql中没有)
* 案例
id:主键自增(auto_increment)
name:非空且唯一
salary:非空
bonus:默认为0
---
* 外键:用来连接两个表,分为主表和从表,外键给从表添加。创建先主后从,删除先从后主(foreign key)
* dep_id关联主表id
2. 数据库设计
+ 概念:设计表、字段、关联关系
+ 步骤:需求分析->物理设计->维护设计
+ 表关系
* 一对一
-例:用户和用户详情
分拆外键关联另一方主键,设置外键唯一性
* 一对多
- 例:部门表和员工表
* 多对多
-例:商品和订单
需要订单商品中间表(order_id,goods_id,count)分别关联不同表的主键+业务字段
3. 大案例
* 音乐专辑
+ 需求分析:专辑、曲目、用户、短评
+ 关系:专辑对曲目:一对多
用户对短评:一对多
专辑对短评:一对多
用户和专辑:多对多