9.从课程表course中删除课程号为3的记录。(注意:因为cno是sc表的外 码,需要先把sc表中选修了3号课程的记录删除,再删除course中课程号 为3的记录)
时间: 2024-11-09 07:28:03 浏览: 14
实验课-第9次-18308045-谷正阳1
在数据库操作中,如果要按照这个逻辑删除course表中的课程号为3的记录,你需要遵循以下步骤:
1. **级联更新**(假设SQL数据库支持级联删除):
使用`ON DELETE CASCADE`选项,可以确保当删除course表中的相关课程(如cno=3)时,关联的sc表中选择了该课程的学生记录也会被自动删除。这在SQL命令中通常像这样写:
```sql
ALTER TABLE sc
DROP FOREIGN KEY fk_cno_to_course ON DELETE CASCADE;
```
这里`fk_cno_to_course`是sc表中连接course表的外键名。
2. **删除sc表中的记录**:
确保没有学生选修3号课程后,你可以删除sc表中的相关记录:
```sql
DELETE FROM sc WHERE cno = 3;
```
3. **删除course表中的记录**:
只有在sc表中对应的记录都被删除后,才能安全地删除course表中的记录:
```sql
DELETE FROM course WHERE cno = 3;
```
阅读全文