• 数据库上机实验4 数据更新和视图


    一、实验目的

    1、熟练掌握数据插入、修改和删除操作语句。

    2、掌握视图的创建和删除语句。

    3、理解视图的查询、插入、修改和删除操作。

    二、实验内容

    根据实验1中创建的学生作业管理数据库以及其中的学生表、课程表和学生作业表,进行以下操作。每一个任务都要给出SQL语句,并且列出查询结果。

    1、在学生表中添加一条学生记录,其中,学号为0593,姓名为张乐,性别为男,专业班级为电子05。

    insert into student values('0593','张乐','男','电子05',null,null)

    2、将所有课程的学分数变为原来的两倍。

    update course set credit=credit*2

    3、删除张乐的信息。

    delete from student where sname='张乐'

    4、创建一个电子05的学生视图(包括学号、姓名、性别、专业班级、出生日期)。

    1. create view v_dz05
    2. as
    3. select sno,sname,ssex,major,birth from student
    4. where major='电子05'

    5、创建一个生物05的学生作业情况视图(包括学号、姓名、课程名、作业1成绩、作业2成绩、作业3成绩)。

    1. create view v_sw05
    2. as
    3. select student.sno,sname,cname,cj1,cj2,cj3 from student,course,score
    4. where student.sno=score.sno and course.cno=score.cno and major='生物05'

    6、创建一个学生作业平均成绩视图(包括学号、作业1平均成绩、作业2平均成绩、作业3平均成绩)。

    1. create view v_avgzy
    2. as
    3. select sno 学号,avg(cj1) 作业1平均成绩,avg(cj2) 作业2平均成绩,avg(cj3) 作业3平均成绩
    4. from score
    5. group by sno

    7、修改第5题中生物05的学生作业情况视图,将作业2成绩和作业3成绩去掉。

    1. alter view v_sw05
    2. as
    3. select student.sno,sname,cname,cj1
    4. from student,course,score
    5. where student.sno=score.sno and course.cno=score.cno and major='生物05'

    8、向电子05的学生视图中添加一条记录,其中学号为0596,姓名为赵亦,性别为男,专业班级为电子05,出生日期为1986-6-8(除了电子05的学生视图发生变化之外,看看学生表中发生了什么变化?)。

    1. insert into v_dz05 values('0596','赵亦','男','电子05','1986-6-8')
    2. 学生表也新增加了赵亦的一条记录。

    9、将电子05的学生视图中赵亦的性别改为“女”(除了电子05的学生视图发生变化之外,看看学生表中发生了什么变化?)。

    1. update v_dz05 set ssex='女' where sname='赵亦'
    2. 学生表中赵亦的性别也改成了女。

    10、删除电子05的学生视图中赵亦的记录。

    delete from v_dz05 where sname='赵亦'
    

    11、删除电子05的学生视图。

    drop view v_dz05

    三、实验指导

    1、启动SQL Server2012软件。

    2、通过分离附加的方法,将实验1所创建的作业管理数据库恢复到该软件中。

    3、SQL Server中,程序不区别大小写,特别要注意程序中的标点符号,一定要在英文半角状态下输入,否则会出错。

    4、给列赋值时要注意字符要用单引号引起来,而其它类型的值则不需要用单引号。

    5、修改和删除记录一定要指定条件,否则就会修改或删除表中的全部记录。

    6、并不是所有的视图都可以对其进行添加记录、修改记录和删除记录操作,只有可更新视图才可以实现上述操作。

    7、由于视图是张虚表,所以对视图更新,最终转换成对基本表的更新。

  • 相关阅读:
    多分类中混淆矩阵的TP,TN,FN,FP计算
    计算机毕业设计springboot+vue基本微信小程序的家装公司管理系统小程序
    安全功能测试
    前端设计模式之【工厂模式】
    kubernetes namespace pod label deployment介绍与命令
    资料分析-笔记
    Air实现Go程序的热重载(热加载)
    Bitmap 的基本原理
    STM32 HAL库USART的接收数据方法实现
    【微服务】六. Nacos配置管理
  • 原文地址:https://blog.csdn.net/qq_64314976/article/details/126008169