数据库核心概念:候选码、主码与外码详解

一句话先记住:
候选码是“能唯一标识一行”的最小属性集;从中挑一个当主码;外码是“引用别人主码”的属性;主属性是任何候选码里的成员。

下面分开说清楚:

  1. 候选码(Candidate Key)
    定义:关系里能唯一标识一条元组、且去掉其中任一属性就不再唯一的最小属性集合。
    特点:

    • 唯一性:不同元组在该属性集上取值绝不重复。
    • 最小性:再少一个属性就失去唯一性。
    • 可以有多个:例如学生表里(学号)和(身份证)都可做候选码。
  2. 主码(Primary Key)
    定义:人为选定、用来在表里唯一区分行的那个候选码。
    特点:

    • 只能选一个;DBMS 会自动为它建唯一索引并强制 NOT NULL。
    • 其余候选码如果也声明,就叫“唯一键/候补键(Alternate Key)”。
  3. 外码(Foreign Key)
    定义:一个表(子表)里的属性或属性集,其取值必须要么全空,要么等于被参照表(父表)主码的某个现有值
    作用:建立两个表之间的参照完整性约束。
    例子:
    选课表(学号, 课号, 成绩) 里的“学号”引用学生表的主码“学号”;选课表的“学号”列就是外码。

  4. 主属性(Prime Attribute)
    定义:任何一个候选码里包含的属性都称为主属性。
    非主属性(Non-prime Attribute):不属于任何候选码的属性。
    例子:
    若候选码有(学号)和(身份证),那么学号、身份证都是主属性;姓名、年龄等是非主属性。

记忆口诀
“候选”是最小唯一键,
“主码”是选定的真命键;
“外码”拿来连别人,
“主属性”一切候选都包含。

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

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

相关文章

【开题答辩全过程】以 基于Python对手表数据的分析与可视化设计为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

Intel MiDaS深度估计部署案例:WebUI集成详解

Intel MiDaS深度估计部署案例:WebUI集成详解 1. 引言:AI 单目深度估计 - MiDaS 在计算机视觉领域,从单张2D图像中恢复3D空间结构一直是极具挑战性的任务。传统方法依赖多视角几何或激光雷达等硬件设备,成本高且部署复杂。近年来…

小白必看:AI分类器云端部署指南,没GPU也能用

小白必看:AI分类器云端部署指南,没GPU也能用 引言:为什么你需要这篇指南 如果你正在转行学习AI,却被复杂的分类任务和环境配置折磨得焦头烂额,这篇文章就是为你量身定制的。很多新手都会遇到这样的困境:笔…

如何高效提取人名地名机构名?AI智能实体侦测服务一键高亮识别

如何高效提取人名地名机构名?AI智能实体侦测服务一键高亮识别 在信息爆炸的时代,每天都有海量的非结构化文本数据产生——新闻报道、社交媒体、企业文档、客服记录……这些文本中蕴藏着大量关键信息,如人名、地名、机构名等命名实体。如何从…

MiDaS模型优化指南:提升深度估计准确率的技巧

MiDaS模型优化指南:提升深度估计准确率的技巧 1. 引言:AI 单目深度估计的现实挑战 在计算机视觉领域,单目深度估计(Monocular Depth Estimation)是一项极具挑战性的任务——仅凭一张2D图像,推断出场景中每…

手把手玩转S7-200与双变频器Modbus通讯

s7-200和两台变频器modbus rtu通信程序 采用西门子224xp,配mcgs触摸屏,变频器一台三菱D700,一台台达vfd-m,通过modbus rtu程序可以控制变频器的正反转,停止,频率的设定,加减速,以及频率电流的读取。 可以看…

Linux系统调用追踪与性能分析实战

前言 程序跑得慢,但不知道慢在哪。CPU不高、内存够用、磁盘IO也正常,可就是响应慢。这时候需要看系统调用(syscall):程序到底在做什么?是频繁读写文件、网络IO阻塞,还是系统调用本身开销太大&am…

【开题答辩全过程】以 高校学生会管理系统为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

分类模型持续学习:云端自动更新权重,准确率随时间提升

分类模型持续学习:云端自动更新权重,准确率随时间提升 引言 在新闻资讯爆炸式增长的今天,传统静态分类模型面临着一个尴尬局面:刚训练好的模型可能还没上线,新闻热点就已经换了风向。想象一下,当"元…

AI MiDaS应用开发:自定义深度估计流程详解

AI MiDaS应用开发:自定义深度估计流程详解 1. 引言:AI 单目深度估计的现实意义 1.1 从2D图像到3D空间的理解挑战 在计算机视觉领域,如何让机器“理解”真实世界的三维结构一直是一个核心问题。传统方法依赖双目立体视觉或多传感器融合&…

零基础部署Qwen3-VL|通过Qwen3-VL-WEBUI镜像快速体验4B-Instruct版本

零基础部署Qwen3-VL|通过Qwen3-VL-WEBUI镜像快速体验4B-Instruct版本 在多模态AI技术飞速发展的今天,视觉-语言模型(VLM)已从“看图说话”的初级阶段,迈向理解、推理、操作三位一体的智能代理时代。阿里通义千问团队推…

移动端推送实现:极光推送、Firebase Cloud Messaging 实战

极光推送实现代码Android 端集成 在 build.gradle 中添加依赖:implementation cn.jiguang.sdk:jpush:4.6.0 implementation cn.jiguang.sdk:jcore:2.7.0初始化代码(在 Application 类中):JPushInterface.setDebugMode(true); JPus…

PLC数据监控小程序,最短10ms刷新一次,可监控西门子、GE、三菱、欧姆龙等各种PLC的变量...

PLC数据监控小程序,最短10ms刷新一次,可监控西门子、GE、三菱、欧姆龙等各种PLC的变量,简单实用。 经常有这样的电气问题,突然停机了但没报任何故障,看程序不可能一直盯着,而且闪来有时也看不出&#xff0c…

自然连接与等值连接全解析

自然连接与等值连接详解 📊 核心定义 1. 等值连接(Equi Join) 定义:基于两个表中指定属性值相等进行的连接操作特点:连接条件必须是相等比较()结果:结果表中包含两个表的所有属性&am…

零代码玩转AI分类:预置镜像5分钟上线,按分钟计费不浪费

零代码玩转AI分类:预置镜像5分钟上线,按分钟计费不浪费 1. 什么是智能分类?为什么电商需要它? 想象一下你刚接手一家线上服装店的运营工作,每天要上新数百件商品。手动给每件T恤打上"休闲""圆领"…

3D空间感知实战:MiDaS模型在自动驾驶场景的应用案例

3D空间感知实战:MiDaS模型在自动驾驶场景的应用案例 1. 引言:单目深度估计为何是自动驾驶的关键拼图? 在自动驾驶系统中,环境感知是决策与控制的前提。传统方案依赖激光雷达(LiDAR)获取高精度三维点云数据…

浓度迁移与损伤方程的研究与探讨

浓度迁移结合损伤方程最近在搞锂电池负极材料研发的时候,发现个有意思的现象——锂离子在石墨层间扩散时,局部浓度突变会引发晶格裂纹。这事儿让我想起了浓度迁移和损伤方程的耦合计算,今天咱们就用Python来扒一扒这个过程的数值模拟。先看个…

AI分类模型部署神器:1小时1块云端GPU,比本地快5倍

AI分类模型部署神器:1小时1块云端GPU,比本地快5倍 1. 引言:当新闻分类遇上算力危机 最近参加AI竞赛的同学可能都遇到过这样的困境:本地电脑跑个新闻分类模型要8小时,而提交截止时间只剩3小时。这种"算力焦虑&qu…

Qwen3-VL-WEBUI镜像全解析|赋能视觉-语言理解新高度

Qwen3-VL-WEBUI镜像全解析|赋能视觉-语言理解新高度 [toc] 1. 引言:多模态大模型的演进与Qwen3-VL的战略定位 随着人工智能从单一文本向多模态融合发展,视觉-语言模型(Vision-Language Models, VLMs)已成为推动AI代…

Linux磁盘IO优化实战:从调度器到文件系统

前言 服务器CPU不高、内存够用,但就是慢。top一看,%wa(IO wait)长期在50%以上,说明CPU在等磁盘IO。 磁盘IO慢的原因很多:调度器不合适、文件系统配置不当、硬件瓶颈、或者应用IO模式有问题。这篇文章从系统…