数据库三范式
4个回答
展开全部
通俗地理解三个范式,对于数据库设计大有好处。在数据库设计中,为了更好地应用三个范式,就必须通俗地理解三个范式(通俗地理解是够用的理解,并不是最科学最准确的理解):
第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解;
第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;
第三范式:3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。
没有冗余的数据库设计可以做到。但是,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。具体做法是: 在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑。降低范式就是增加字段,允许冗余。
第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解;
第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;
第三范式:3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。
没有冗余的数据库设计可以做到。但是,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。具体做法是: 在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑。降低范式就是增加字段,允许冗余。
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数据库三范式,是指在2NF的基础上,去掉非主属性对码地传递函数依赖。
比如:
S(工号,姓名,车间,车间主任),其中码为工号,非主属性为姓名,车间,车间主任;
非主属性:车间主任传递函数依赖于工号,所以S不属于3NF。
去掉“车间主任传递函数依赖于工号”,则为
S1(工号,姓名,车间)其中码为工号
S2(车间,车间主任)其中码为车间
比如:
S(工号,姓名,车间,车间主任),其中码为工号,非主属性为姓名,车间,车间主任;
非主属性:车间主任传递函数依赖于工号,所以S不属于3NF。
去掉“车间主任传递函数依赖于工号”,则为
S1(工号,姓名,车间)其中码为工号
S2(车间,车间主任)其中码为车间
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询