3、 写出以下批量修改数据的SQL语句: 1) 对每个课程,求学生的选课人数和学生的最高成绩,并把结果存入‘课程汇总’数据表。使用SELECT INTO 和INSERT INTO 两种方法实现。 2) 在选课表中使用SQL语句将所有不及格的学生成绩加5分。 3) 将姓名为张小红的学生的课程C语言编程的成绩加10分。 4) 在学生表中使用SQL语句删除姓名为张三的学生信息。讨论改删除操作所收到的约束。 5) 删除所有选修课程C语言编程的选课记录
时间: 2024-03-01 15:51:50 浏览: 277
用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等
5星 · 资源好评率100%
1)
- 使用 SELECT INTO 实现:
```
SELECT c.cname, COUNT(sc.sid), MAX(sc.grade)
INTO 课程汇总
FROM course c, score sc
WHERE c.cname = sc.cname
GROUP BY c.cname;
```
- 使用 INSERT INTO 实现:
```
INSERT INTO 课程汇总 (cname, num, grade)
SELECT c.cname, COUNT(sc.sid), MAX(sc.grade)
FROM course c, score sc
WHERE c.cname = sc.cname
GROUP BY c.cname;
```
2)
```
UPDATE score SET grade = grade + 5 WHERE grade < 60;
```
3)
```
UPDATE score SET grade = grade + 10 WHERE sid IN (SELECT sid FROM student WHERE sname = '张小红') AND cname = 'C语言编程';
```
4)
```
DELETE FROM student WHERE sname = '张三';
```
该删除操作可能受到外键约束的限制,如与其他表存在关联关系的话,需要先删除与该学生有关的记录或者修改外键约束。
5)
```
DELETE FROM score WHERE cname = 'C语言编程';
```
阅读全文