`
tangzongyun
  • 浏览: 175403 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

三范式解释

阅读更多
三范式最简单最易记的解释

1NF:字段不可分;
2NF:有主键,非主键字段依赖主键;
3NF:非主键字段不能相互依赖;

解释:
1NF:原子性 字段不可再分,否则就不是关系数据库;
2NF:唯一性 一个表只说明一个事物;
3NF:每列都与主键有直接关系,不存在传递依赖;

不符合第一范式的例子(关系数据库中create不出这样的表):

表:字段1, 字段2(字段2.1, 字段2.2), 字段3 ......

存在的问题: 因为设计不出这样的表, 所以没有问题;

不符合第二范式的例子:

表:学号, 姓名, 年龄, 课程名称, 成绩, 学分;

这个表明显说明了两个事务:学生信息, 课程信息;

存在问题:

数据冗余,每条记录都含有相同信息;
删除异常:删除所有学生成绩,就把课程信息全删除了;
插入异常:学生未选课,无法记录进数据库;
更新异常:调整课程学分,所有行都调整。

修正:

学生:Student(学号, 姓名, 年龄);

课程:Course(课程名称, 学分);

选课关系:SelectCourse(学号, 课程名称, 成绩)。

满足第2范式只消除了插入异常。


不符合第三范式的例子:

学号, 姓名, 年龄, 所在学院, 学院联系电话,关键字为单一关键字"学号";

存在依赖传递: (学号) → (所在学院) → (学院地点, 学院电话)

存在问题:

数据冗余:有重复值;

更新异常:有重复的冗余信息,修改时需要同时修改多条记录,否则会出现数据不一致的情况

删除异常

修正:
学生:(学号, 姓名, 年龄, 所在学院);
学院:(学院, 地点, 电话)。
作者:sunxing007
分享到:
评论

相关推荐

    Java面试中数据库三范式详解

    在 Java 面试中,数据库三范式是常见的考察点,本文将对三范式进行详细的解释,并以实例来讲解怎样将这些范式应用于实际工程。 一、第一范式(1NF) 第一范式的定义是:关系 R 中的每个属性都是不可分割的项。也...

    MySQL三大范式详解.docx

    MySQL 三大范式是关系型数据库设计的基础,它们分别是第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。下面我们将详细介绍 MySQL 三大范式的定义、特点和应用。 第一范式(1NF) 第一范式(1NF)是指数据库表...

    数据库设计三大范式应用实例剖析.pdf

    本篇文章将详细介绍数据库设计的第一、第二和第三范式,并通过具体的例子来解释如何在实践中应用这些概念。 #### 范式说明 ##### 第一范式(1NF) - **定义**:数据库表中的每个字段必须是不可分割的基本数据项。...

    通俗易懂,实例讲解数据库范式,三范式,六范式

    ##### 第三范式(3NF): 消除非主属性的传递依赖 - **前提条件**:符合2NF。 - **定义**:在符合2NF的基础上,要求非主属性既不部分依赖于码,也不传递依赖于码。 - **示例**:如果一个课程的教材由教师决定,而教师...

    数据库三范式最简单最易记的解释.docx

    下面是对数据库三范式的详细解释: 第一范式(1NF) 第一范式的要求是:字段不可分。也就是说,一个字段不能再被分割成更小的字段。如果一个字段可以被分割成更小的字段,那么这种数据库设计就不符合第一范式。 ...

    SQL 第三范式 规范化设计数据库范例 数据库设计示例

    本资源摘要信息将围绕 SQL 第三范式规范化设计数据库范例进行详细的解释和分析,从标题、描述、标签和部分内容中提炼出相关的知识点。 标题和描述解释 本资源的标题和描述都是“SQL 第三范式 规范化设计数据库范例...

    数据库三范式.pdf

    数据库三范式经典实例解析 数据库设计范式是数据库...通过对数据库三范式的解释,我们可以看到数据库设计范式的重要性,它可以使数据库结构更加简洁、明晰,避免数据冗余、更新异常、插入异常和删除异常等问题的发生。

    数据库设计第三范式详解

    在众多的规范化理论中,第三范式(3NF)是数据库设计中的一个重要概念,它有助于消除数据冗余,提高数据一致性,降低更新异常,从而优化数据库性能。本文将深入探讨第三范式,并通过具体的案例分析来帮助理解其应用...

    mysql三范式.doc

    MySQL三范式是数据库设计中遵循的重要原则,用于构建高效、规范化的数据库模式,避免数据冗余和操作异常。这三范式分别是第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。让我们逐一详细解释。 1. 第一范式(1...

    数据库范式以及范式的级别

    三、第三范式(3NF) 3NF要求所有非主属性不仅不依赖于主键的一部分,而且也不依赖于其他非主属性。也就是说,如果存在非主属性之间的函数依赖,需要将这些属性分离到不同的表中,以确保每个表的每个非主属性都只...

    析取范式与合取范式

    本文将详细解释析取范式与合取范式的概念、定义以及它们之间的关系,并通过具体的例子来加深理解。 #### 命题常项与命题变项 在讨论析取范式与合取范式之前,首先需要了解命题常项与命题变项的概念。 - **命题常项*...

    数据库 三范式最简单最易记的解释

    以下是对三范式的详细解释: 1. 第一范式(1NF:First Normal Form)——原子性 第一范式要求数据库中的每一列(字段)都是不可分割的原子性数据,即每个字段不能再细分为更小的部分。例如,如果一个字段包含了多...

    学案之数据库三范式.pdf

    本文将对数据库设计三范式进行通俗的解释,并以实例来讲解怎样将这些范式应用于实际工程。数据库设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入、删除和更新...

    db设计之第三范式讲解

    以下是第一范式、第二范式和第三范式的详细解释: **第一范式(1NF)**: 1NF 是最基本的要求,它规定数据库表的每一列都应是不可分割的基本数据项。这意味着每个字段只存储单一值,不允许有复合字段。例如,在员工...

    数据库设计三大范式1

    例如,在订单表中,如果包含客户编号作为外键,而不在订单表中直接存储客户的其他信息,如姓名和公司,这样就满足了第三范式。当需要查询客户信息时,通过客户编号去引用专门的客户信息表,避免了数据冗余和更新异常...

    数据库范式详解+实例

    数据库范式主要包括第一范式(1NF)、第二范式(2NF)、第三范式(3NF)以及BCNF(Boyce-Codd范式)。下面我们详细介绍这些范式及其相互之间的转换方法。 ##### 第一范式(1NF) - **定义**:如果关系模式R属于第...

    【《范式守信》阅读答案】 范式守信.docx

    1. 加点词解释: - 谓:对……说,告诉。在文中,范式对张劭表达了自己的计划。 - 至:到。此处指的是范式按照约定的时间到达张劭家。 2. 翻译: "元伯具以白母,请设馔以候之" 这句话的意思是:张劭把范式来访...

    从0范式到3范式模型设计视频介绍

    配合《三范式 3NF 3范式 视频讲解 胡艺友 灰太狼.xlsx》这个文件,可能是视频讲解的补充资料,包含具体的案例分析或练习,帮助学习者巩固所学知识。 了解和掌握这些范式,不仅可以帮助数据库设计人员创建出逻辑清晰...

    数据库的---三大范式

    3. 第三范式(3NF):3NF 在2NF的基础上更进一步,要求不存在非关键字段对关键字段的传递函数依赖。这意味着,如果A→B→C,那么C不能直接依赖于A,否则就存在传递函数依赖。例如,如果“学号”是主键,“学院”、...

Global site tag (gtag.js) - Google Analytics