mysql数据库:超键、候选键、主键与外键

news2024/11/18 8:45:19

mysql数据库:超键、候选键、主键与外键

  • 1、超键(Superkey)
  • 2、候选键(Candidate Key)
  • 3、主键(Primary Key)
  • 4、外键(Foreign Key)


💖The Begin💖点点关注,收藏不迷路💖

1、超键(Superkey)

超键是能唯一确定表中每行数据的属性集。它可以是单个属性或多个属性的组合。

示例:

一个学生表(Student),包含学号(ID)、姓名(Name)、年龄(Age)和班级(Class)四个字段。

其中,学号(ID)单独、姓名+班级(Name+Class)组合,以及学号+姓名+年龄+班级的全集都可以作为超键,因为它们都能唯一标识表中的一行数据。

IDNameAgeClass
001张三201班
002李四212班
003王五201班
004赵六223班

2、候选键(Candidate Key)

候选键是最小的超键,即没有任何多余属性的超键。一个表可以有多个候选键。

示例:

在上表中,如果假设学号(ID)是唯一的,并且没有其他属性与学号组合后还能保持唯一性,那么学号(ID)就是一个候选键。同时,如果姓名+班级的组合在表中也是唯一的(尽管这种情况较少见),那么它也是一个候选键。

3、主键(Primary Key)

主键是表中的一个特殊候选键,用于唯一标识每行数据。每个表只能有一个主键,且主键的值不能为空。

示例:

在上表中,我们通常会选择学号(ID)作为主键,因为它能唯一标识每一个学生,并且符合主键的所有要求。

4、外键(Foreign Key)

外键是表中的一个字段,其值必须是另一个表的主键的值。它用于在两个表之间建立关联,确保数据的参照完整性。

示例:

假设我们还有一个班级表(Class),其中包含班级ID(ClassID)和班级名称(ClassName)两个字段,且班级ID是主键。

在学生表中,我们可以添加一个班级ID(ClassID)字段作为外键,这个字段的值必须对应于班级表中的某个班级ID,从而在学生表和班级表之间建立关联。这样,当我们查询某个学生的信息时,可以通过学生表中的班级ID快速找到该学生所属的班级信息。

班级表 (Class)

ClassIDClassName
C001一年级1班
C002一年级2班
C003二年级1班

学生表 (Student)

IDNameAgeClassID
001张三20C001
002李四21C002
003王五20C001
004赵六22C003

简洁来说,超键包含候选键,候选键中最常用的是主键,而外键用于表间关联。

在这里插入图片描述


💖The End💖点点关注,收藏不迷路💖

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

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

相关文章

【Golang】Go语言接口与多态

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

106.WEB渗透测试-信息收集-FOFA语法(6)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:105.WEB渗透测试-信息收集-FOFA语法(5) FOFA语法案例&#xff1a…

金融领域的人工智能——Palmyra-Fin 如何重新定义市场分析

引言 DigiOps与人工智能 正在改变全球各行各业,并带来新的创新和效率水平。人工智能已成为金融领域的强大工具,为市场分析、风险管理和决策带来了新方法。金融市场以复杂性和快速变化而闻名,人工智能处理大量数据并提供清晰、可操作的见解的…

影刀---实现我的第一个抓取数据的机器人

你们要的csdn自动回复机器人在这里文末哦! 这个上传的资源要vip下载,如果想了解影刀这个软件的话可以私聊我,我发你 目录 1.网页对象2.网页元素3.相似元素组4.元素操作设置下拉框复选框滚动条获取元素的信息 5.变量6.数据的表达字符串变量列…

企业身份安全管理面临的问题和解决方案

企业在向数字化、移动化、智能化加速发展的过程中,需加大信息化建设与数字化转型的投入已成为共识。企业建设的系统数量逐渐增多,部分企业甚至存在上千套信息化系统,且类型繁多: 办公系统:HR、OA、邮件、考勤等系统核心…

【Linux】通过内核以太层可查看应用程序运行时访问外网情况

比如,SourceInsight3.exe从外网接收信息: 下边是运行firefox时内核打印的日志,可以看到浏览器运行时调用了很多的操作系统内核系统调用,比如:文件读写、网络数据包的收发等等,其实这些日志还并不全&#x…

Qt-QListWidget多元素控件(36)

目录 多元素控件介绍 xxWidget和xxView的区别 描述 属性 方法 增加 删除 信号 使用 图形化界面操作 代码操作 多元素控件介绍 首先我们要先了解一下多元素控件是什么意思,一般而言是以以下这六个控件来进行区别的 xxWidget和xxView的区别 举个例子 描述…

寻找情感MV视频素材:热门素材网站推荐

在MV创作中,情感表达至关重要,唯美而深情的画面能迅速引发观众的共鸣,从而增强作品的感染力。不论你是制作爱情、失恋、亲情还是友情主题的MV,找到合适的情感视频素材都是成功的关键。如果你想为作品增添温暖和深情的氛围&#xf…

PowerPoint技巧:将幻灯片里的图片背景设置为透明

在PPT中添加了图片,想要将图片中的背景设置为透明或者想要抠图,有什么方法吗?今天分享两个方法。 方法一: 添加图片,选中图片之后,点击【图片格式】功能,点击最左边的【删除背景】 PPT会自动帮…

如何在 macOS 上恢复未保存的 Excel 文件 – 文件恢复的最佳方法

Microsoft Excel 主要用于学生、员工和组织创建电子表格、报告和许多其他内容。我们是人,我们也容易忘记事情。因此,您想要在 macOS 上恢复未保存的 Excel 文件并不罕见。 虽然在 Excel 上恢复未保存的电子表格很容易,但在 macOS 上就有些棘…

【C++掌中宝】类和对象(一):类的定义和实例化

文章目录 引言1. 什么是类?1.1 类的定义1.1.1 类定义格式1.1.2 访问限定符1.1.3 类域 1.2 类在编程中的作用——抽象与封装 2. 类的基本组成2.1 成员变量:类的属性(变量)2.2 成员函数:类的行为(函数&#x…

ai教我校验“顺序”四则运算expression(re“非捕获组”应用)

与ai学伴聊天对掐,学到了re非捕获组匹配。 (笔记模板由python脚本于2024年09月25日 23:21:14创建,本篇笔记适合初通Python,熟悉六大基本数据(str字符串、int整型、float浮点型、list列表、tuple元组、set集合、dict字典)的coder翻阅) 【学习的…

手机使用技巧:如何修复变砖的 Android 手机

许多 Android 用户选择 root Android 手机以获取更多权限。但您应该知道,除了许多好处之外,root 过程中的一些不正确的操作很容易导致一些意外情况。例如,一些用户说他们的 Android 设备在 root 之后变成了砖头手机。 如果不幸手机变砖了&am…

数字化转型:开启未来发展新引擎

在当今飞速发展的时代,数字化转型已成为企业、组织乃至整个社会发展的关键趋势。 信息技术的迅猛发展,如互联网、大数据、人工智能等,为数字化转型提供了强大支撑。市场竞争的加剧,也促使企业不断寻求提升竞争力的方法&#xff0c…

【TabBar嵌套Navigation案例-检查新版本-点击Cell执行方法 Objective-C语言】

一、接下来,我们来说这个检查新版本的功能 1.首先呢,在我们的示例程序当中, 当你点击检查新版本Cell的时候,它会弹出一个框, 这个弹框啊,就是点击cell的时候,执行了一个方法, 然后在这个方法里边,写了一个弹框, 根本的目的啊,就是要去做到,如何点击一个Cell,执行…

PyCharm 的安装和配置

环境要求: OS:Windows / macOS / Linux (此处使用 Windows 10 进行演示)Python:包括但不限于 Anaconda,miniconda,Python。在 Windows 下只要能找到 python.exe 即可 Download 进入 PyCharm 官网,选择对…

计算栅格时序数据的斜率并提取特定斜率范围的栅格

计算栅格时序数据的斜率 1 数据和软件2 计算时序栅格斜率2.1 在ENVI中安装斜率计算器插件2.2 波段合成2.3 计算斜率2.4 导出斜率栅格为tif 3 提取特定斜率范围的栅格 前言 本文所说的时序数据,本质上是多波段数据,理论上可以有无数个波段,但是…

【含文档】基于Springboot+微信小程序 的高校二手商品交易平台(含源码+数据库+lw)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 系统定…

电子级四甲基氢氧化铵 (TMAH)行业调研:预计2030年全球市场规模将达到10亿美元

四甲基氢氧化铵 (TMAH) 是一种化合物。它是一种季铵盐,其中铵离子完全被四个甲基取代,并与氢氧离子配对。TMAH 通常存在于水溶液或甲醇溶液中,在那里它以强碱的形式存在。电子级四甲基氢氧化铵 (TMAH) 是一种高纯度化合物,主要用于…

黑马头条day3-3自媒体接口作业

黑马头条day3-3自媒体接口作业 1)素材管理 1.1)图片删除 接口描述 说明接口路径/api/v1/material/del_picture/{id}请求方式GET参数Integer id响应结果ResponseResult 返回结果实例: 实现思路 感觉删除比较难写 因为需要判断图片是不是和文章挂钩了 gpt帮了很…