初学(一)
数据库信息
1.使用良好的数据库设计有啥优点(当数据库比较复杂时我们需要设计数据库)
1.节省数据的存储空间
2.能够保证数据的完整性
3.方便进行数据库应用系统的开发
2.软件项目开发周期中的数据库设计
1.需求分析阶段:分析业务和数据处理需求
2.概要设计阶段:设计E-R模型图,确保信息完整正确
3.详细设计阶段:应用三大范式审核数据结构
4.代码编写阶段:物理实现数据库,编码实现应用
5.软件测试阶段 6.安装部署
3.步骤
1.收集信息:与系统相关人员交流,理解需要完成的任务
2.标识实体(Entity):表示数据库要管理对象或者实体,实体是名词(类似于Java对象)
3.标识每个实体的属性(Attribute):相当于Java中的属性
4.标识实体之间的关系(Reltionship):主外键关系
4.E-R图
相当于建筑图纸的地位
长方形:实体,一般是名词
椭圆形:属性,一般是名词
菱形:关系,一般是动词
5.映射基数(参与一个联系中的实体数目称为映射基数。)
1.一对一 1:1
2.一对多 1:n
3.多对一 n:1
4.多对多 m:n
6.简单E-R图
7.关系模式
用二维表的形式表示实体和实体间联系的数据模型即关系模式
8.E-R图转换为关系模式的步骤
1.把每个实体都转化为关系模式R(U)形式
2.建立实体间联系的转换
9.转化E-R为数据库模型图
1.将各实体转换为对应的表,将各属性转换为各表对应的列
2.标识每个表的主键列
3.在表之间建立主外键,体现实体
10.三大范式(通常只需要规范前两大范式)
1.第一范式(1st NF):
第一范式的目标是确保每列的原子性:
如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式
2.第二范式(2nd NF):
第二范式要求每个表只表述一件事情
3.第三范式(3nd NF):
如果一个关系满足2NF,并且除了主键以外的其他列都不传递依赖与主键列,则满足第三范式(3NF)
11.规范化和性能的关系
1.为满足某种商业目标,数据库性能比规范性数据库更加重要
通过在给定的表中添加额外的字段,以大量减少需要从中搜索信息所需的时间
通过在给定的表中插入计算列(如成绩总分),以方便查询
2.在数据规范化同时,要综合考虑数据库的性能