数据库码的理解

简介: 写下个人理解
1.码或键

通过属性或者属性组区分两个不同的元组,这样的属性或者属性组称为码或键。比如:一个学生表中,可以通过学号这一个属性区分不同学生,也可以通过(学号、身高、性别)这一属性组来区分不同学生

2.超码或超键

如果有个码,可以去掉其中某个属性,它依然是这个关系的码,那么这样的码是超码。比如:(学号、身高、性别)这里面去掉性别依然可以区分不同学生。每个关系默认最少一个超码,因为一个表不能只有一列,默认的超码就是这个表的所有属性的集合

3.候选码或候选键

对应超码去理解,如果有个码,不能移除任一属性,否则就不是码了,这样就是候选码。比如:一个学生表中,单独一个学号属性可以是候选码,候选码就是最小超码,候选码不代表就只能是一个属性,假设一个学生表中存在姓名相同,身高不同的两个人,那么(姓名、身高)这一属性组就可以称为候选码,所以一个表可能有多个候选码,最少得有一个

4.主码或主键

通常说主键,在候选码中选最小的那个,比如学号,身份证号,选其中一个就可以

5.全码或主键

当一个表中所有属性的集合才是这个表的候选码,那么可以称为全码,比如:性别、年龄、年级、身高,如果这四个属性一起才能确认一条元组,那么这个属性的集合就是这个关系的主码

6主属性和非主属性

关系中任意一个候选码中的属性为主属性,不在任一候选码中的属性为非主属性

举例说明:
创建一个成绩表
image.png
数据如下
image.png

码:(学号、学科、成绩) 、(学号、学科)
超码:(学号、学科、成绩)
候选码:(学号、学科)
主码:(学号、学科)
没有主码
主属性:学号、学科
非主属性:成绩

注意:
这个表没有单一的属性可以作为主键,只能添加联合主键:
格式:alter table 表名 add constraint 主键约束的名字 primary key(列名1,列名2)
alter table chengji add constraint lh_pk primary key(学号,学科)
目录
相关文章
|
JSON 网络协议 数据安全/隐私保护
nps npc docker 部署 解决端口报错问题
nps npc docker 部署 解决端口报错问题
803 0
|
3月前
|
安全 数据安全/隐私保护
SAP集成HTTP接口(x-www-form-urlencoded格式)
实现这一过程时,务必遵循最佳实践,包括确保代码的稳定性、考虑到异常处理和系统资源的优化使用。这样做不仅能确保数据的安全和有效性,还能提高系统集成的效率和可靠性。
218 4
|
4月前
|
人工智能 JSON 运维
🚀🚀 【MCP + AI】grafana-mcp-analyzer:基于 MCP 的轻量图表分析助手
`grafana-mcp-analyzer` 是一个开源项目,通过 MCP 协议连接 AI 助手与 Grafana,实现智能分析监控数据。只需简单配置,AI 可快速解读图表,提供性能瓶颈、优化建议等专业分析,极大提升运维效率。支持多种数据源(Prometheus、ES 等),适配 ChatGPT、Claude 等模型,部署轻量,操作便捷。从此告别深夜手动排查问题,让 AI 成为你的智能运维专家!项目地址:<https://github.com/SailingCoder/grafana-mcp-analyzer>
531 1
🚀🚀 【MCP + AI】grafana-mcp-analyzer:基于 MCP 的轻量图表分析助手
|
11月前
|
机器学习/深度学习 数据挖掘 数据处理
Pandas库
Pandas库是Python中进行数据分析和处理的强大工具,通过其丰富的功能和简洁的API,可以高效地完成各种数据处理任务,为后续的数据分析和机器学习提供了有力的支持。
347 63
|
网络协议 安全 网络安全
网络编程:基于socket的TCP/IP通信。
网络编程:基于socket的TCP/IP通信。
|
存储 缓存 分布式数据库
数据库性能优化方向的三大类别
【6月更文挑战第6天】本文介绍了数据库优化策略,包括集中式数据库的反规范化设计(如增加冗余列、派生列、重组合表、水平和垂直分表)和数据一致性保障;这些方法旨在提升性能、确保数据安全和适应大规模数据场景。
302 1
数据库性能优化方向的三大类别
|
存储 安全 前端开发
后端技术在现代软件开发中的关键作用
本文将深入探讨后端技术在现代软件开发中的关键作用,包括其重要性、主要职责以及与其他技术栈的配合。通过分析后端技术的发展趋势和实际应用案例,帮助读者更好地理解并应用后端技术。
234 25
|
9月前
|
人工智能 编解码 API
用行动回应“实体清单”,智谱发布了一系列新模型
1月15日,美国商务部将25个中国实体列入出口管制实体清单,其中包括智谱及其子公司。面对制裁,智谱迅速回应,表示不会影响业务,并于次日发布全新端到端模型GLM-Realtime、升级GLM-4-Air和GLM-4V-Plus模型,推出免费的Flash系列普惠模型。这些举措展示了智谱在多模态交互、视频理解、语音交互等领域的技术实力,体现了中国AI企业在自主创新和自主可控方面的坚定决心。此举不仅彰显了智谱的技术硬实力,也为中国AI产业的自立自强树立了榜样。
192 24
|
网络协议 安全 网络安全
2024年江苏省职业院校技能大赛信息安全管理与评估 第一阶段学生组(样卷)
2024年江苏省职业院校技能大赛信息安全管理与评估 第一阶段学生组(样卷)
|
安全 Java 数据库
Spring Boot中集成 Shiro
本节主要介绍了 Shiro 安全框架与 Spring Boot 的整合。先介绍了 Shiro 的三大核心组件已经它们的作用;然后介绍了 Shiro 的身份认证、角色认证和权限认证;最后结合代码,详细介绍了 Spring Boot 中是如何整合 Shiro 的,并设计了一套测试流程,逐步分析 Shiro 的工作流程和原理,让读者更直观地体会出 Shiro 的整套工作流程。Shiro 使用的很广泛,希望读者将其掌握,并能运用到实际项目中。