gaosheng-221

实验五   数据更新

一、实验目的

掌握数据更新操作的用法。

二、实验环境

 

三、实验示例

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%。

分类:

技术点:

相关文章: