当前课程知识点:MySQL数据库案例教程 > 第4章 查询与视图 > 4.5 外键 > 4-5外键实训
一、默认外键类型设置
1. 导入数据库stu.sql
2. 创建student表中的stu_id字段为主键
3. 为score表创建外键:fk_sid,score表中的sid与student表中的sid建立外键关联
4. 为score表添加记录(请记录命令执行情况,并分析原因)
1234, JAVA, 90
5. 删除student表中的学号为”0102”的学生记录(请记录命令执行情况,并分析原因)
二、级联外键设置
1. 删除stu数据库
2. 重新导入stu数据库
3. 为score表创建外键:fk_sid,score表中的sid与student表中的sid建立主键关联,update类型:级联;delete类型:级联
4. 将student表中sid字段 “0001”修改为“1111”
5. 观察score表中sid字段 “0001”记录变化
6. 删除student表中sid字段“1111”的记录
7. 观察score表中sid字段 “1111”记录是否存在
三、no action 外键设置
1.删除stu数据库
2.重新导入stu数据库
3.为score表创建外键:fk_sid,score表中的sid与student表中的sid建立主键关联,update类型:no action;delete类型:no action。
4. 将student表中sid字段 “0001”修改为“1111”
5. 观察score表中sid字段 “0001”记录变化
6. 删除student表中sid字段“1111”的记录
7. 观察score表中sid字段 “1111”记录是否存在
四、set null 外键设置
1.删除stu数据库
2.重新导入stu数据库
3.为score表创建外键:fk_sid,score表中的sid与student表中的sid建立主键关联,update类型:set null;delete类型:set null
4.将student表中sid字段 “0001”修改为“1111”
5.观察score表中sid字段 “0001”记录变化
6.将score表中的sid字段修改为允许为空
7.删除student表中sid字段“1111”的记录
8.观察score表中sid字段 “1111”记录是否存在
五、创建外键
在stu数据库的course表和score表间创建外键约束:修改course表的cno,则score表中cno字段值同步修改;不允许删除course表中记录。创建好外键后完成下列操作:
1. course表中修改01号课程号为11
2.删除course 表中 cno为’02’的记录
-1.1 数据库基础知识
-1.2 MySQL的安装与运行
-第1章 测试
-2.1 数据库的基本操作
-2.2 表的基本操作
-2.3 MySQL数据类型
-2.4 约束设置
-2.5 索引
--2-5索引视频
--2-5索引课件
--2-5索引实训
-第2章测试
-3.1 插入记录
-3.2 修改记录
-3.3 删除记录
--3.3删除记录
-第3章 测试
-4.1 select语句
-4.2 单表查询
-4.3 多表查询
-4.4 子查询
--4-4子查询课件
--4-4子查询实训
-4.5 外键
--4-5外键视频
--4-5外键课件
--4-5外键实训
-4.6 视图
--4-6视图视频1
--4-6视图视频2
--4-6视图课件
--4-6视图实训
-第4章测试
-5.1 函数
--5-1系统函数
--5-1函数课件
--5-1 函数实训
-5.2 流程控制语句
-5.3 事务与游标
-5.4 存储过程
-5.5 触发器
--5-5触发器视频
--5-5触发器课件
--5-5触发器实训
-第5章测试
-6.1 数据库备份与还原
-6.2 异构数据源导入导出
-第6章测试
-7.1 用户管理
-7.2 权限管理
-7.3 应用实例开发
-第7章测试