数据库的五个Key:

  • Candidate Keys 候选键 : one or n attributes that can uniquely identify a record. 具有唯一性,最小性.
  • Primary Keys 主键 : 从候选键中,挑选出其中一个键,也就是最具识别意义(用于排序)的一个键. 具有唯一性.
  • Alternate(Secondary ) Keys 次要键 : Candidate Key 中除了Primary Key之外,剩余的key。
  • Super keys 超键 : any candidate key 并 any attributes in the table.
  • Foreign Keys 外(部)键 : 被用来参考到其他表格主键的关联键.
For example:学生资料表
(student_id, student_no, student_name, student_depid)
其中:
student_id表示学生身分证字号
student_no表示学生学号
student_name表示学生姓名
student_depid表示学生的科系代号则:
Candidate Key : 就可以是 {student_id}或者{student_no}.Primary Key :  从Candidate Key挑选一个,至于挑选哪一个,就看你的系统特性.Alternate(Secondary ) Key : 就是没被挑中当成Primary Key的其他Candidate Key,例如,如果挑选 {student_id}当成主键,Alternate(Secondary ) Key 就是{student_no}Super key:  就可以是 {student_id}、{student_no}、 {student_id, student_no}、{student_id, student_name}、{student_id, student_depid} ... 等等,都符合唯一性的条件。若存在科系资料表depentment (depid, dep_name),而且depid当成科系资料表的主键,学生资料表的 student_depid就是Foreign Key。

数据库中五个Key(鍵)的概念区分相关推荐

  1. mysql 删除check_数据库中五种check约束添加/删除方法

    创建一个实例 令有一个c表c(cno,--) create table student ( sno int, cno int, ID char(100), sname char(100), sage ...

  2. Redis中的批量删除数据库中的Key

    本文参考:http://blog.csdn.net/spring21st/article/details/15771861 http://stackoverflow.com/questions/575 ...

  3. 批量删除Redis数据库中的Key

    批量删除Key Redis 中有删除单个 Key 的指令 DEL,但好像没有批量删除 Key 的指令,不过我们可以借助 Linux 的 xargs 指令来完成这个动作 redis-cli keys & ...

  4. php redis删除所有key,redis中批量删除key的方法

    Redis是一个高性能的key-value数据库.redis中可以借助Linux的xargs指令来批量删除key,也可以使用flushdb和flushall命令删除所有key. 批量删除Key Red ...

  5. mysql schema和database_数据库中的Schema和Database的区别

    在mysql中创建一个Schema和创建一个Database的效果好像是一样的,但是在sqlserver和orcal数据库中效果又是不同的,目前我只能理解为在mysql中schema<==> ...

  6. redis中批量删除key

    1.删除所有的key,可以使用redis自身的命令: flushdb 删除当前数据库中的所有Key flushall 删除所有数据库中的key 2.使用linux中的xargs来删除所有的key re ...

  7. 关于数据库中的一些概念

    一.关系型数据库和非关系型数据库 非关系型数据库,又被称之为NoSQL,描述的是大量结构化数据存储方法的集合.可分为: 面向检索的列式存储,典型代表GoogleAppengine的BigTable: ...

  8. 孤荷凌寒自学python第五十四天使用python来删除Firebase数据库中的文档

    孤荷凌寒自学python第五十四天使用python来删除Firebase数据库中的文档 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数据库 ...

  9. 常年“盘踞”数据库前五的 MongoDB,在中国有哪些新动向?

    整理 | 夕颜 受访者 | MongoDB首席客户官Richard Kreuter MongoDB北亚区副总裁苏玉龙 出品 | CSDN(ID:CSDNnews) 作为一个通用性的开源分布式文档型数据 ...

最新文章

  1. MATLAB求解常微分方程
  2. 手机数控模拟器安卓版_车床模拟器2手机版下载-车床模拟器2游戏 v2.5.0安卓版_5577安卓网...
  3. python结束线程池正在运行的线程_python之线程与线程池
  4. Django框架环境搭建遇到的问题
  5. 字典-字典和列表组合的应用场景
  6. java android aes加密解密_AES加密解密在JAVA和ANDROID下互通
  7. linux c语言编写聊天室mysql_Linux平台上用C语言实现与MySQL数据库的连接
  8. pytorch实现dcgan_PyTorch版本DCGAN实现的注解
  9. Python中的super()简单用法
  10. php连接db2失败,PHP_浅谈DB2数据库故障处理及最佳实践,  当你在使用数据库时,可 - phpStudy...
  11. c#获取部分DRAW
  12. 计算机学习路线推荐(初稿)
  13. 【学习OpenCV4】滚动条Trackbar的创建与使用详解
  14. UVA 572 Oil Deposits(DFS求连通块)
  15. 第四季-专题20-SPI驱动程序设计
  16. wpa_supplicant工具移植
  17. bootstrap 实现吸顶效果_多种方式实现吸顶效果
  18. 高等数学强化3:一元函数积分学 P积分
  19. 全球首发!惯性导航导论(剑桥大学)第三部分
  20. 集值映射(set -valued mapping)

热门文章

  1. 微信公众号上传文件附件教程
  2. 死锁(死锁的发生条件、预防死锁、避免死锁)
  3. 组件化、模块化、Composing Builds
  4. 文化是一种meme,NFT也是
  5. Oracle 报 “ORA-00054 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效” 问题的解决方法
  6. python 百度云不限速版_现在各位是怎么应对百度网盘限速的?
  7. C# -> (Cshape)笔记
  8. javaS的tring和androidS的tring区别是什么?
  9. OLED12864模块全屏缓冲刷新
  10. [基础]tfcenter的安装和启动