MySQL数据库实验五:数据更新
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL数据库实验五:数据更新相关的知识,希望对你有一定的参考价值。
实验五 数据更新
一、实验目的
掌握数据更新操作的用法。
二、实验环境
三、实验示例
1、?往基本表SC中插入元组。
① INSERT INTO S(S#,SNAME,AGE,SEX)
VALUES(‘S36‘,‘GU‘,20,‘M‘);
② INSERT INTO SC(S#,C#)
VALUES(‘S5‘,‘C8‘);
③ INSERT INTO SC
VALUES(‘S4‘,‘C4‘,85),
(‘S3‘,‘C6‘,90),
(‘S7‘,‘C2‘,70);
④ INSERT INTO S_SCORE(S#, AVG_SCORE)
SELECT S#,AVG(SCORE) FROM SC
WHERE S# IN
(SELECT S# FROM S WHERE SEX=‘M‘)
GROVP AY S#
HAVING AVG(SCORE)>80;
2、 把课程名为MATHS的成绩从基本表SC中删除,
DELETE FROM SC
WHERE C# IN (SELECT C# FROM C
WHERE CNAME=‘MATHS‘);
3、把C4课程中小于该课程平均成绩的成绩元组从基本表SC中删除。
DELETE FROM SC
WHERE C#=‘C4‘
AND SCORE<(SELECT AVG(SCORE)FROM SC
WHERE C#=‘C4‘);
4、对基本表SC和C中的值进行修改。
① 把C5课程的课程名改为DB。
UPDATE C
SET CNAME=‘DB‘
WHERE C#=‘C5‘;
② 把女同学的成绩提高10% 。
UPDATE SC
SET SCORE=SCORE * 1.1
WHERE S# IN(SELECT S# FROM S
WHERE SEX=‘F‘);
③当C4课的成绩低于该门课程平均成绩时,提高5%。
UPDATE SC
SET SCORE=SCORE * 1.05
WHERE C#=‘C4‘
AND SCORE<(SELECT AVG(SCORE) FROM SC
WHERE C#=‘C4‘);
④在C中,把课程号为C5的元组修改为(C5,DB,LIU):
UPDATE C
SET ROW =(‘C5‘, ‘DB‘, ‘LIU‘)
WHERE C# = ‘C5‘;
四、实验内容与步骤
1、 往关系C中插一个课程元组(‘C8‘,‘VC++‘,‘BAO‘)。
2、 检索所授每门课程平均成绩均大于80分的教师姓名,并把检索到的值送往另一个已存在的表FACULTY(TNAME)。
3、 在SC中删除尚无成绩的选课元组。
4、 把选修LIU老师课程的女同学选课元组全部删去。
5、 把MATHS课不及格的成绩全改为60分。
6、 把低于所有课程总平均成绩的女同学成绩提高5%。
7、 在表SC中,当某个成绩低于全部课程的平均成绩时,提高5%。
以上是关于MySQL数据库实验五:数据更新的主要内容,如果未能解决你的问题,请参考以下文章