2.1 数据库结构优化的目的
减少数据冗余
尽量避免数据维护中出现更新,插入和删除异常
插入异常
如果表中的某个实体随着另一个实体而存在
先看一个表结构
为学号,课程名称列定义主键约束...,即一个学生只能选相同的课程一次
看看数据
存在数据冗余
插入一门新课试试
由于主键约束的存在,在没有学生选择这门课时无法将新课程插入到表中...更新异常
如果更改表中的某个实体的单独属性时,需要对多行进行更新
更新了2行数据,数据越多,同时更新的也就越多,可看出和数据冗余有很大联系
删除异常
如果删除某一个实体会导致其他实体的消失...,为避免插入异常,保留分类信息表,这样不会发生丢失分类信息情况
订单表变换
2.6 反范式化后查询
只需查订单表,不再需要对四张表查询
由于冗余了用户手机号,商品价格在订单表和订单商品表冗余处理
2.7...最通用时间类型
2.8.4.4.2TIMESTAMP
2.8.4.4.3时区问题
设置时区-第十时区
建表
TIMESTAMP时间随时区变化
2.8.4.4.4微秒问题
表数据
2.8.4.4.5自动更新问题