当前位置: 首页 > news >正文

MySQL——多表操作(一)外键(1)什么是外键

        在实际开发的项目中,一个健壮数据库中的数据一定有很好的参照完整性。例如有学生档案和成绩单两张表,如果成绩单中有张三的成绩,学生档案中张三的档案却被删除了,这样就会产生垃圾数据或者错误数据。为了保证数据的完整性,将两表之间数据建立关系,因此就需要在成绩表中添加外键约束。

        外键是指引用另一个表中的一列或多列,被引用的列应该具有主键约束或唯一性织束。外键用于建立和加强两个表数据之间的连接。为了使初学者更好地理解外键的定义,接下来,通过两张表来讲解什么是外键。

        首先需要创建两个表,一个班级表(grade)和一个学生表(student),具体语句如下

CREATE DATABASE chapter05;USE chapter05;CREATE TABLE grade(
id int(4) NOT NULL PRIMARY KEY,
name varchar(36)
);CREATE TABLE student(
sid int(4) NOT NULL PRIMARY KEY,
sname varchar(36),
gid int(4) NOT NULL
);

         学生表 (student) 中的 gid 是学生所在的班级 id,是引人了班级表 (grade) 中的主键 id 。那么 gid 就可以作为表 student 的外键。被引用的表,即表 grade 是主表;引用外键的表,即表 student 是从表,两个表是主从关系。表 student 用 gid 可以连接表 grade 中的信息,从而建立了两个表数据之间的连接。
        引人外键后,外键列只能插人参照列存在的值,参照列被参照的值不能被删除,这就保证了数据的参照完整性解。


http://www.mrgr.cn/news/9926.html

相关文章:

  • 【Oracle问题】ORA-12516:监听程序找不到符合协议堆栈要求的可用处理程序问题处理
  • Windows-Server-2016/2019绕过WindowsDefender
  • 多维度对比社保与个人养老金,个养要不要买?其实社保也是自己买的
  • 文件批量重命名【JAVA】【正则表达式】
  • 餐饮商标怎么注册自己的品牌!
  • 苹果微信误删了聊天记录怎么恢复?4个方法,几分钟就能恢复
  • ICCV2023:Co-DETR:DETRs与协同混分配训练
  • 手撕顺序表
  • AWS EC2的独特优势,让云计算更简单高效!
  • http的host字段
  • Yolo环境搭建(深度学习基础环境)
  • MySQL——多表操作(二)操作关联表(3)删除数据
  • 邀请函 | 深圳网商天下与您相约2024(第五届)全数会
  • 容器化性能测试-通篇讲解 Locust 性能测试
  • 使用C#的异步和依赖注入实现网络数据存储
  • 配置PXE预启动执行环境:Kickstart自动化无人值守安装
  • Django 后端架构开发:JWT 项目实践与Drf版本控制
  • 哪种运动耳机适合骑行使用?精选五款品牌优质的运动耳机推荐
  • 在MacOS上升级Ruby版本
  • C语言内存操作函数