实验三数据库简单操作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
重庆理工大学数据库精品课程教辅材料
实验报告册
课程:数据库系统概论
班级:
学号:
姓名:
重庆理工大学
计算机科学与工程学院
2016年3月
实验三
一实验目的
利用查询分析器用SQL语言定义基本表、索引并进行相关操作。
二实验软件平台
SqlServer
三实验内容
(一)利用查询分析器在表中插入数据
打开在实验一中建立的“学生课程”数据库,利用SQL语句在“SCDB”数据库中的student、course、sc表中插入数据;
student表的内容:
SNO SNAME SSEX SAGE SDEPT
95001李勇男20CS
95002刘晨女19IS
95003王敏女18MA
95004 张立男19 IS
95005 陈锋男21 CS
course表的内容
CNO CNAME CPNO CREDIT
1数据库54
2数学NULL 2
3信息系统14
4操作系统 6 3
5数据结构7 4
6 数据处理NULL 2
7 PASCAL语言 6 4
sc表的内容
SNO CNO GRADE
95001192
95001265
95001388
95002290
95002380
95003 3 93
95003 4 85
95003 5 95
(二)修改表中的数据
在插入数据后的三张表student、course、sc中进行相关的更新操作:
1、将student表中‘李勇’的名字改为‘李明’;
2、将student表中‘王敏’的年龄改为20岁;
3、将所有学生的年龄增加1岁;
4、修改学生的学号‘95002’为‘95007’,注意会有什么情况发生?为什么?
update s
set sno='95007'
where sno='95002'
与约束条件冲突,因为sno是主键,在sc表中被关联。改动主键会报错。
5、把选修了“2”号课程,且成绩低于70分的成绩提高5%;
update sc2
set grade=grade*(1+0.05)
where grade<70 and
cno= 2
6、将“CS”系全体学生的成绩置零;
update sc2
set grade= 0
where'cs'=
(select sdept
from s
where s.sno=sc2.sno)
(三)删除表中的数据
1、把选修了“2”号课程,且成绩低于70分的学生的选课记录删除掉;
delete from sc2
where cno='2'and
grade< 70
2、删除学号为“95003”的学生信息,注意会有什么情况发生?为什么?
delete from s
where sno='95003'
无法完成删除。因为snow是主键。
3、删除"IS"系选修了"2"号课程的选课记录;
delete from sc2
where cno='2'and
'IS'=(select sdept
from s
where s.sno=sc2.sno)
4、删除“CS”系的全体学生的选课记录;
delete from sc2
where'CS'=
(select sdept
from s
where s.sno=sc2.sno)
5、删除student、sc整张表的数据,注意表之间的关系,删除的顺序。
delete from sc2
delete from s
五思考题
1.一个表
2.应该注意更新的数据的先后顺序
3.定义了主键的
收获与建议
为了加强课程建设、增强师生沟通,请您就本实验课程的主要收获和宝贵建议填写如下:
一主要收获:熟悉了对sql server 的使用能够运用一些基本的建立数据库和表的sql语句了
二您的建议