本文最后更新于:2 个月前

实验目的

  1. 掌握视图定义方法和使用方法。

  2. 掌握对视图数据的增,删,改操作。

实验内容

  1. 创建计算机系(CS)的学生信息视图 V_1。

    create view v_1 as
    select * from student
    where sdept='CS'
  2. 建立计算机系 (CS) 选修了 1 号课程的学生信息视图 V_2。

    create view v_2 as
    select * from student
    where sdept='CS' and sno in (select sno from sc where cno='1')
  3. 建立计算机系选修了 1 号课程且成绩在 90 分以上的学生的视图 V_3。

    create view v_3 as
    select * from student
    where sdept='CS' and sno in (select sno from sc where cno='1' and grade>90)
  4. 定义一个反映学生学号,姓名,出生年份的视图 V_4。

    create view V_4(学号,姓名,出生年份) as
    select sno,sname,year(getdate())-sage from student
  5. 将学生的学号及其平均成绩定义为一个视图 V_5。

    create view V_5(学号,平均成绩) as
    select sno,avg(grade) from sc group by sno
  6. 创建计算机系 (CS) 学生的平均成绩视图 V_6, 包括学号和平均成绩

    create view v_6(学号,平均成绩) as
    select sno,avg(grade) from sc
    where sno in(select sno from student where sdept='cs') group by sno
  7. 通过 V_2 视图查询计算机系选修了 1 号课程的学生姓名,性别,年龄。

    select sno,sname,sage from v_2
  8. 在 V_5 视图中查询平均成绩在 90 分以上的学生学号和平均成绩。

    select 学号,平均成绩 from v_5
    where 平均成绩>90
  9. 将计算机系学生视图 V_1 中学号 98002 的学生姓名改为“刘辰”。

    update v_1 set sname='刘辰' 
    where sno='98002'
  10. 向计算机系学生视图 V_1 中插入一个新的学生记录:95029,赵新,20 岁

    insert into v_1(sno,sname,sage,sdept)
    values('95029','赵新',20,'cs')
  11. 删除视图 V_1 中学号为 95029 的记录。

    delete v_1 where sno='95029'

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!

SQL实验十—索引 上一篇
SQL实验八—数据库多表查询综合 下一篇