Java-数据库编程(1.数据库三大范式设计)-创新互联

1. 数据库三大范式设计
1. 设计数据库步骤
	无论数据库大小复杂程度建议通过下列分析步骤:
		1. 收集信息;
		2. 标识实体;
		3. 标识每个实体需要存储的详细信息;
		4. 标识实体之间的关系;
	
2. 关系型数据库
	1. 优势:关联数据库中的各个项目相关信息
	2. 以酒店为例: 客房与客人有主从关系;

3. 概要设计绘制E-R图(Entity-Relationship/实体-关系)
	1.E-R图三大部分:
		1. 实体: 现实世界人或物
		2. 属性: 实体的特征
		3. 联系: 多个实体之间的关联关系
	2. 映射基数: 
		1. 一对一
		2. 一对多
		3. 多对一
		4. 多对多
	3. 实体关系图: 
		1. 矩形: 实体集
		2. 椭圆形: 属性
		3. 棱形: 联系集

4. 关系数据库模式
	1. 实体之间的联系分成: 
		1. 一对一
		2. 一对多
		3. 多对多

	2. 酒店为例就是以一对多的关系,转换后的结果如下:
		1. 房客(房客号(主属性)/房客描述/房客类型/房客状态/床位数/入住人数/价格);
		2. 客人(客人编号(主属性)/客人姓名/身份证/入住日期/结账日期/押金/总金额/客房号(外键));
		Tips: 在表中作为主键,属性为外键;

5. 数据库三大范式: 
	1. 为何存在范式?
		1. 信息重复
		2. 更新异常
		3. 插入异常(无法表示某些信息)
		4. 删除异常(丢失有用的信息)

	2.三大范式如下: 
   		1. 第一范式: 确保每列原子性
		2. 第二范式: 每列都要与主键相关(要有主键)
		3. 第三范式: 列渔猎之间不存在相互依赖关系
	   		1. 如果A--B且B--C 可以得出A-->C 这就形成了传递依赖;
	
	3. 生产环境是否一定要遵守三大范式?
		1. 具体要看业务需求不一定要按照三大范式这样会增加性能负担
		2. 阿里/京东开发规约:
			1. [强制] 超过三个表进制jion,需要jion字段,数据类型必须一致;
			2. 多表关联查询时,保证关联字段需要有索引;
			Tips:即使双表jion也要注意表索引,SQL性能

6. 总结: 
	1. 为满足三大范式的话数据操作会收到相应的影响,所以在实际开发中:既要考虑三大范式也要避免数据冗余和各种数据操作异常。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧

成都创新互联公司是一家专业提供湖滨企业网站建设,专注与网站制作、成都网站建设、H5响应式网站、小程序制作等业务。10年已为湖滨众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。
本文标题:Java-数据库编程(1.数据库三大范式设计)-创新互联
文章出自:http://scyanting.com/article/doiicd.html