本文主要是介绍mysql 10: 数据库设计三范式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
DBA命令
导出数据
- 导出某库
- 在shell窗口:mysqldump database_name > /home/wangxun/mysqlBackUp/database_name.sql -uroot -pXXX;
- 导出某表
- 在shell窗口:mysqldump database_name tb_name > /home/wangxun/mysqlBackUp/tb_name.sql -uroot -pXXX;
导入数据
- create database database_name;
- use database_name;
- source 导出的sql文件;
数据库设计三范式
什么是设计范式?
- 设计表的依据,根据这个三范式规则设计的表,不会出现数据冗余
第一范式
- 任何一张表都要有主键,每个字段具有原子性,不可再分
第二范式
第三范式
- 以上范式基础上
- 所有非主键字段必须直接依赖主键,不能产生传递依赖
- 一对多怎么设计?
注意
- 实际开发,以满足客户的需求为主,有时候会拿冗余换执行速度
一对一怎么设计?
方案一:主键共享
t_user_login 用户登陆表
id(pk) username password
___________________________________
1 zs 123
2 ls 456
t_user_detail 用户详细信息表
id(pk + fk) realname tel ....
__________________________________________
1 wangxun xxx
2 han yyy
方案二:外键唯一(多对多的变形)
t_user_login 用户登陆表
id(pk) username password
___________________________________
1 zs 123
2 ls 456
t_user_detail 用户详细信息表
id(pk) realname tel userid(fk + unique) ....
______________________________________________________
1 wangxun xxx 1
2 han yyy 2
这篇关于mysql 10: 数据库设计三范式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!