實驗五 數據更新
一、實驗目的
掌握數據更新操作的用法。
二、實驗環境
三、實驗示例
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%。
