数据库三大范式

第一范式(1NF)

        确保每个列中的数据是不可再分的。即,每个列只能包含一个值,而不是一个列表或数组。

每个列有多个数据的要拆成多个表。

 错误:

正确: 

 

第二范式 (2NF)

        在第一范式的基础上,非主键字段必须完全依赖于主键。如果一个表中的非主键字段只依赖于主键的一部分,则需要将该字段拆分到另一个表中。 不存在部分依赖。

错误:

 

        订单日期由订单ID、客户ID和产品ID联合主键共同决定,

        而客户名称只依赖于客户ID不依赖于订单ID和产品ID,(部分依赖)

        而产品名称只依赖于产品ID不依赖于订单ID和客户ID,(部分依赖)

        所以要拆分写。

正确:

第三范式(3NF)

        在第一二范式的基础上,非主键字段不能依赖于其他非主键字段。如果某个非主键字段依赖于另一个非主键字段,则需要将该字段拆分到另一个表中。不存在传递依赖。

错误:

        姓名由员工ID和部门ID 联合主键共同决定,

        部门名称依赖于部门ID,不依赖于员工ID,(部分依赖)

        经理姓名依赖于经理ID,经理ID又依赖于部门ID,(传递依赖)

        所以要拆分写。

正确:

总结

第一范式(1NF):确保每个字段都是原子的,不可再分。

第二范式(2NF):满足1NF,并且消除部分依赖。

第三范式(3NF):满足2NF,并且消除传递依赖。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/55506.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 中的 Makefile 伪目标详解

在 Linux 环境中,Makefile 是构建项目的重要工具,它通过定义规则,指导 make 工具如何编译和链接程序。通常我们会在 Makefile 中定义目标(target),这些目标通常对应文件名。然而,有一种特殊类型…

探索Spring Boot:实现“衣依”服装电商平台

1系统概述 1.1 研究背景 如今互联网高速发展,网络遍布全球,通过互联网发布的消息能快而方便的传播到世界每个角落,并且互联网上能传播的信息也很广,比如文字、图片、声音、视频等。从而,这种种好处使得互联网成了信息传…

数据结构与算法——Java实现 30.合并多个有序链表 小顶堆实现

后来我们都走了很久,远到提及往事时, 总会加上once upon a time —— 24.10.6 23. 合并 K 个升序链表 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 示例 1&#xff1…

【EXCEL数据处理】000010 案列 EXCEL文本型和常规型转换。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来,方便查看。

前言:哈喽,大家好,今天给大家分享一篇文章!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 【EXCEL数据处理】000010 案列 EXCEL单元格格式。EXCEL文本型和常规型转…

推荐一个可以把PDF样本册转换为翻页电子书的网站

​随着互联网的普及,越来越多的企业和个人开始意识到线上展览的重要性。如何将实体样本册转化为线上版本,让更多人了解和欣赏自己的产品与服务? 一、网站简介 这款PDF样本册免费上传网站名为“FLBOOK”,致力于为广大用户提供便捷…

【C语言】基础篇

简单输出“helloword” #include<stdio.h> int main(){printf("hello world!");return 0; } 和与商 #include<stdio.h> int main(){int a,b,sum,quotient;printf("Enter two numbers:");scanf("%d %d",&a,&b);sum a b…

构建 10 万卡 GPU 集群的技术挑战

构建 10 万卡 GPU 集群的技术挑战 摘要 揭示AI训练集群关键基础设施挑战&#xff0c;探讨突破现有AI瓶颈的必要性与10万GPU集群&#xff08;如OpenAI、Meta&#xff09;建设所面临挑战与需求。 构建网络拓扑&#xff0c;需权衡多层交换机成本、带宽与维护。本文对比Ethernet与…

【IEEE PDF eXpress】格式不对

目录 一、问题二、解决方法 一、问题 word的文档&#xff0c;用IEEE PDF eXpress网站生成pdf后&#xff0c;提交论文出现错误&#xff1a; Document validation failed due to the following errors: Content exceeds IEEE template margins for its format (Page 1:Bottom).…

螺蛳壳里做道场:老破机搭建的私人数据中心---Centos下Docker学习04(环境准备)

4 创建docker容器 4.1创建网络 [rootlocalhost wutool]# docker network create -d macvlan --subnet192.168.137.0/24 --gateway192.168.137.2 --ip-range192.168.137.0/24 -o parentens33 nat 52af11381bfd655d175e4168265b2a507793e8fe48f119db846949ffd4dd27de [rootlocal…

【JavaWeb】javaweb目录结构简介【转】

以上图说明&#xff1a; bbs目录代表一个web应用bbs目录下的html,jsp文件可以直接被浏览器访问WEB-INF目录下的资源是不能直接被浏览器访问的web.xml文件是web程序的主要配置文件所有的classes文件都放在classes目录下jar文件放在lib目录下

Stream流的终结方法(二)——collect

1.Stream流的终结方法 2. collect方法 collect方法用于收集流中的数据放到集合中去&#xff0c;可以将流中的数据放到List&#xff0c;Set&#xff0c;Map集合中 2.1 将流中的数据收集到List集合中 package com.njau.d10_my_stream;import java.util.*; import java.util.f…

鸿蒙开发(NEXT/API 12)【管理应用与Wear Engine服务的连接状态】手机侧应用开发

监测应用与Wear Engine服务的连接状态 华为运动健康App在后台停止服务&#xff08;如功耗过高&#xff09;&#xff0c;从而导致应用与Wear Engine服务的连接状态发生变化。对于类似这种不确定的断开情况&#xff0c;开发者可以通过本功能特性了解当前应用和Wear Engine的连接…

五子棋双人对战项目(3)——匹配模块

目录 一、分析需求 二、约定前后端交互接口 匹配请求&#xff1a; 匹配响应&#xff1a; 三、实现游戏大厅页面&#xff08;前端代码&#xff09; game_hall.html&#xff1a; common.css&#xff1a; game_hall.css&#xff1a; 四、实现后端代码 WebSocketConfig …

初识算法 · 双指针(2)

目录 前言&#xff1a; 盛最多水的容器 题目解析&#xff1a; 算法原理&#xff1a; 算法编写&#xff1a; 有效三角形的个数 题目解析&#xff1a; 算法原理&#xff1a; 算法编写&#xff1a; 前言&#xff1a; 本文介绍两个题目&#xff0c;盛最多水的容器和有效三…

Kotlin IntelliJ IDEA 环境搭建

Kotlin IntelliJ IDEA 环境搭建 引言 Kotlin,作为一门现代编程语言,因其简洁、表达性强以及与Java的完全互操作性而受到越来越多开发者的青睐。IntelliJ IDEA,作为JetBrains公司推出的集成开发环境(IDE),为Kotlin开发提供了强大的支持。本文将详细介绍如何在IntelliJ I…

【Blender Python】5.Blender场景中的集合

概述 这里的“集合”是指Blender场景中的集合。你可以在“大纲视图”面板中看到 图标的&#xff0c;就是集合&#xff0c;可以看做是文件夹&#xff0c;用于分类和整理场景中的对象。 获取场景的集合 >>> C.scene bpy.data.scenes[Scene]>>> C.scene.coll…

在centos7.9启动docker 18.09.9报错 error initializing graphdriver: overlay2

一、问题 在centos7.9启动docker 18.09.9报错&#xff1a;Error starting daemon: error initializing graphdriver: overlay2: the backing xfs filesystem is formatted without d_type support, which leads to incorrect behavior. Reformat the filesystem with ftype1 to…

PromQL:高效查询时间序列数据的利器

全文目录&#xff1a; 前言前言PromQL 概述Prometheus 时间序列数据模型PromQL 支持的数据类型 PromQL 基础语法与查询示例1. 基础查询查询瞬时向量查询带标签的时间序列 2. 范围查询3. 聚合操作4. 函数操作5. 偏移量操作 PromQL 实战案例案例 1&#xff1a;监控系统 CPU 使用率…

模仿postman自研的HTTP Client Chrome插件,可绕过浏览器同源政策发起跨域请求

文章目录 1、项目背景2、准备好服务端接口3、chrome扩展开发4、扩展程序演示1、项目背景 在企业开发过程中,有时候需要手动调用线上服务的接口,我们的服务是通过cookie来保存登录态的,且接口做了身份验证,此时有两种情况: 接口是GET类型,则可以直接在浏览器地址栏输入接…