SQL实验08Word格式.docx
《SQL实验08Word格式.docx》由会员分享,可在线阅读,更多相关《SQL实验08Word格式.docx(24页珍藏版)》请在冰豆网上搜索。
数据类型
长度
约束条件
Sno
学号
CHAR
10
主码
Sname
姓名
Ssex
性别
2
Sage
年龄
INT
4
Sdept
系别
3.2Course(课程)
Cno
课程号
Cname
课程名
Cpno
先修课程号
Ccredit
学分
FLOAT
8
3.3SC(选修)
Grade
成绩
四、实验步骤
1、运行SQLSERVER服务管理器,确认数据库服务器开始运行。
2、运行企业管理器,以图示方式点击“附加数据库”,恢复db目录下的数据库文件
3、打开查询分析器,选择刚才恢复的数据库Student,输入SQL指令,获得运行结果。
4、完成以下SQL数据更新语句
(1)查询18岁以上男生的姓名
selectSnamefromStudentwhereSage>
18
(2)查询姓刘的学生
select*fromStudentwhereSnamelike'
刘%'
(3)查询学生数量
selectcount(sno)fromStudent
(4)查询姓刘的姓名中只有两个汉字的学生姓名
select*fromStudentwheresnamelike'
刘_'
(5)查询所有学生,按学号降序列排列
select*fromStudentorderbysnodesc
(6)查询男女生数量
selectssex,count(ssex)fromStudentgroupbyssex
(7)根据姓名查询某人的选课情况(姓名在学生表中找一个),要求显示课程名称、成绩。
附加数据库中课程名称为cnam,我将数据库中课程名称改为cname,与文档中的数据表一致。
selectCname,Grade
fromStudent,Course,SC
whereStudent.Sno=SC.Sno
andSC.Cno=Course.Cno
andSname='
张翔'
(8)查询成绩在80到90之间的学生学号和成绩
selectSno,GradefromSCwhereGradebetween80and90
(9)查询3035313008所选课的平均成绩
selectavg(Grade)fromSCwhereSno='
3035313008'
(10)查询各门功课的平均成绩,并按照成绩升序排列
selectavg(Grade)
fromSC
groupbyCno
orderbyavg(Grade)
(11)添加一个学生信息(学号:
30401433,姓名:
张三,性别:
男,年龄:
21,系别:
cs)
insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)
values('
30401433'
'
张三'
男'
21'
cs'
)
(12)删除刚才添加的学生
deletefromStudentwhereSno='
(13)把所有学生的年龄增加1岁
updateStudentsetSage=Sage+1
(14)删除所有选课记录
deletefromSC
(15)给所有学生选上课程号为10001的课程,成绩为空
insertintoSC(Sno,Cno,Grade)
selectSno,10001,NULL
fromStudent