04电商实例数据库结构设计
发布日期:2021-07-01 02:23:12 浏览次数:2 分类:技术文章

本文共 796 字,大约阅读时间需要 2 分钟。

 优点:易于数据读取

数据插入异常:

执行以下操作时,由于没有主键信息,那么就不会插入数据成功

 

数据更新异常:

把所有的字段都放在一个表中,那么就需要对该表的所有行数据进行锁定,更新时间过长

数据删除异常:

如果执行以下操作,那么就会把用户等级=‘青铜’的所有用户删除

 

 

数据库的设计范式

设计范式是数据库设计的规范
有多种设计范式,如数据库设计第一范式,第3 =范式和第三范式等
数据库设计最低要满足第三范式(3NF)的要求
3NF定义:
-个表中的列和其它列之间既不包含部分函数依赖关系,
也不包含传递函数依赖关系,那么这个表的设计就符合第
三范式。
 

{登录名}《依赖---{用户级别}《依赖-----{级别积分上限,级别积分下限}

所以不符合第三范式的要求

所以讲用户表拆分为两个表从而符合第三范式:

 

 

 

 

 

确认MySQL服务器是否支持分区表

mysq| > SHOW PLUGINS;

 

HASH分区的特点:

跟据MOD(分区键,分区数)的值把数据行存储到表的不同分区中
数据可以平均的分布在各个分区中
HASH分区的键值必须是一个INT类型的值 ,或是通过函数可以转为INT类型
 

 

 

 

RANGE分区特点

●跟据分区键值的范围把数据行存储到表的不同分区中
●多个分区的范围要连续,但是不能重叠
●默认情况下使用VALUES LESS THAN属性,即每个分区不包括指定的那个值:比如按照id=1-100进行分区,那么就不会包含100这个数值

 

RANGE分区的适用场景

1.分区键为日期或是时间类型:比如按照id进行分区,那么假如在某一个分区的用户比较活跃,这个分区就会变得特别大,从而失去了分区的意义

2.所有查询中都包括分区键

3.定期按范围清理数据的情况

 

 

LIST分区的特点

按分区键取值的列表进行分区
同范围分区-样,各分区的列表值不能重复
每一行数据必须能找到对应的分区列表,否则数据插入失败

 

 

转载地址:https://mapengsen.blog.csdn.net/article/details/108807356 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:2020-09-26
下一篇:03数据库设计规范

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月17日 09时01分33秒