数据实验4 数据更新.docx

上传人:b****8 文档编号:9236762 上传时间:2023-02-03 格式:DOCX 页数:14 大小:1.18MB
下载 相关 举报
数据实验4 数据更新.docx_第1页
第1页 / 共14页
数据实验4 数据更新.docx_第2页
第2页 / 共14页
数据实验4 数据更新.docx_第3页
第3页 / 共14页
数据实验4 数据更新.docx_第4页
第4页 / 共14页
数据实验4 数据更新.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

数据实验4 数据更新.docx

《数据实验4 数据更新.docx》由会员分享,可在线阅读,更多相关《数据实验4 数据更新.docx(14页珍藏版)》请在冰豆网上搜索。

数据实验4 数据更新.docx

数据实验4数据更新

 

实验题目

数据更新

小组合作

一、实验目的

1.掌握向表中插入一个或多个元组的方法。

2.掌握删除表中一个或多个元组的方法。

3.掌握修改表中一个或多个元组的方法。

二.实验环境

一台装有SQLServer2005的PC机

三、实验内容与步骤

实验准备:

1.以最便捷的方式在EDUC数据库中新建3张表

2.利用企业管理器向表中插入记录

实验内容

1.插入学生记录(学号:

95030,姓名:

李莉,年龄:

18)

2.插入选课记录(95030,1)

3.计算机系学生年龄改成20

4.数学系所有学生成绩改成0

5.把低于总平均成绩的女同学成绩提高5分

6.修改2号课程的成绩,若成绩小于75分则提高5%,成绩大于75时提高4%(两个语句实现,注意顺序)

7.删除95030学生信息

8.删除SC表中无成绩的记录

9.删除王敏的选课记录

10.删除不及格的学生选课记录

11.删除信息系所有学生选课记录

12.删除所有未被选修的课程

13.查询每一门课程成绩都大于等于80分的学生学号、姓名和性别,把值送往另一个以及存在的基本表STU(SNO,SNAME,SSEX)中

14.建立一个sdeptgrade表,包含(sdept,avggrade)字段,对每一个系,求学生的成绩,并把结果存入sdeptgrade

四、实验过程与分析

1.插入学生记录

insertintostudent(sno,sname,sage)values('95030','李莉','18');

2.插入选课记录

insertintoSC(sno,cno)values('95030','1');

3.计算机系学生年龄改成20

updatestudentsetsage=20wheresdept='CS';

4.数学系所有学生成绩改成0

updateSCsetgrade=0where'MA'=

(selectsdeptfromstudentwherestudent.sno=sc.sno);

5.把低于总平均成绩的女同学成绩提高5分

updatescsetgrade=grade+5where

grade<(selectAVG(grade)fromSC)and

'女'=(selectssexfromstudentwherestudent.sno=Sc.sno);

6.修改2号课程的成绩,若成绩小于75分则提高5%,成绩大于75时提高4%

updateSCsetgrade=grade*(1+0.04)wheregrade>75andcno='2';

7.删除95030学生信息

deletefromscwheresnoin(selectsnofromscwheresno='95030')

deletefromstudentwheresnoin(selectsnofromstudentwheresno='95030')

8.删除SC表中无成绩的记录

deletefromScwheregrade=null;

9.删除王敏的选课记录

deletefromscwheresno=

(selectsnofromstudentwheresname='王敏');

10.删除不及格的学生选课记录

deletefromSCwheregrade<60;

11.删除信息系所有学生选课记录

deletefromSCwhere'IS'=

(selectsdeptfromstudentwherestudent.sno=sc.sno);

12.删除所有未被选修的课程

deletefromcoursewherenotexists

(select*fromscwhereo=o);

13.查询每一门课程成绩都大于等于80分的学生学号、姓名和性别,把值送往另一个以及存在的基本表STU(SNO,SNAME,SSEX)中

selectsno,sname,ssexintoSTUfromSTUDENTwheresnoin(selectsnofromSCgroupbysnohavingmin(grade)>=80);

14.建立一个sdeptgrade表,包含(sdept,avggrade)字段,对每一个系,求学生的成绩,并把结果存入sdeptgrade

createtablesdeptgrade(sdeptchar(10)primarykey,avggradeint,)

insertintosdeptgradeselectSTUDENT.sdept,AVG(SC.grade)

fromSTUDENTjoinSCon(STUDENT.sno=SC.sno)groupbySTUDENT.sdept;

五、实验总结

1、在执行第7题时开始约束受限制,加上级联删除,对勾检查又说有语义错误,最后改为先删除95030在sc表的内容,再删除其在student中的信息就成功了

2、在执行第8题是出现0行受影响,是因为前面进行的数据更新操作,是数据对此条操作有影响

3、在做13,14题时觉的很有难度,但是经过和同学讨论,查阅资料得到了解决。

4、通过本次试验我掌握了向一个表中插入、删除修改表中一个或多个元组的方法。

加深了自己对于表的理解和认识。

5、同时,对于视图的创建、查询和更新操作也有了新的理解和学习,强化了对课本知识的学习,在实验中反复修正、对照使自己可以学的更扎实。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1