2022年实验二数据的查询、更新归纳 .pdf

上传人:Che****ry 文档编号:30552611 上传时间:2022-08-06 格式:PDF 页数:9 大小:296.86KB
返回 下载 相关 举报
2022年实验二数据的查询、更新归纳 .pdf_第1页
第1页 / 共9页
2022年实验二数据的查询、更新归纳 .pdf_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《2022年实验二数据的查询、更新归纳 .pdf》由会员分享,可在线阅读,更多相关《2022年实验二数据的查询、更新归纳 .pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、实验二数据的查询、更新徐龙琴、刘双印设计制作实验二数据的查询、更新一、实验目的1、掌握用户自定义数据类型的方法2、掌握用T-SQL 语句进行数据的插入、修改、删除的方法3、熟练掌握SELECT 语句,能够运用该语句完成各种查询二、实验要求1、实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验内容的预习准备工作;2、能认真独立完成实训内容;3、实验后做好实验总结,根据实验情况完成总结报告。三、实验内容1、用 T-SQL 语句,建立一个“学生课程数据库”,并创建一用户自定义数据类型:名称为“char20” ,数据类型为varchar,长度为20,允许为空。提示: sp_

2、addtype typename= 用户自定义类型的名字, phystype= 系统类型名, nulltype= not null | null , owner= 拥有该类型的用户名 例:自定义一个名为address的类型,其所属系统类型为varchar,长度为 80,不能为空。sp_addtype address, varchar(80), not null 2、用 T-SQL 语句,在“学生课程数据库”中建立学生表,课程表,学生选修表,并向各表插入如下相应的数据。学生表 : Student( Sno,Sname,Ssex,Sage,Sdept ) 其中 Sno 为主键、Ssex 取值为男或

3、女、 Sage在 15 到 30 之间 :Sno Sname Ssex Sage Sdept 95001 李敏勇男20 CS 95002 刘晨女19 IS 95003 王敏女18 MA 95004 张立男18 IS 课程表 :Course(Cno,Cname,Cpno,Credeit,remarks) 其中Cno 为主键、 Teacher 的类型为char20 即为用户定义的数据类型; Cno Cname Cpno Credit Teacher 1 数据库5 4 王芳2 数学NULL 2 刘新3 信息系统1 4 刘新4 操作系统6 3 高升5 数据结构7 4 宋明6 数据处理NULL 2 张彬

4、7 Pascal 语言6 4 李磊学生选修表 :SC(Sno,Cno,Grade) 其中 Sno,Cno 为主键同时又为外键、Grade 值在 0 到 100; Sno Cno Grade 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - 实验二数据的查询、更新徐龙琴、刘双印设计制作95001 1 92 95001 2 85 95001 3 88 95002 2 90 95003 2 55 95004 2 70 3、用 T-SQL

5、 语句,修改上面所建学生课程数据库中数据: 1) 向学生表 :Student中加入一条记录:(95030, 谢非 , 男,22,CS) 并保存2) 将李敏勇的数据库的成绩改为98 分3) 删除学生表Student 中谢非的记录并保存4) 能不能从Student表中删除李敏勇学生的记录, 为什么 ?能不能删除王敏, 张立两个学生的记录 ? 4、用 T-SQL 语句,完成下面简单的查询1)查询全体学生的学号、姓名及年龄. 2)查询全体学生的姓名, 年龄及所在系(要用小写字母表示系名,并用“系名”来表示列名)。3)查询选修了课程的学生学号4)查询信息系全体学生的姓名5)查询所有年龄在20 岁以下的学

6、生姓名及其年龄6)查询年龄在20 到 18 间的学生的姓名, 系别及年龄7)查询年龄不在23 到 19 间的学生的姓名, 系别及年龄8)查询不是信息系(IS) 和计算机系 (CS) 学生的姓名和性别9)查询所有姓刘的学生的姓名,学号和性别10)查询姓“张”且名为一个汉字的学生的姓名11)查询名字中第2 个字为”敏”字的学生姓名和学号12)查询所有不姓刘的学生姓名13)查询全体学生情况,结果按所在系升序排列, 同一系中的学生按年龄降序14)查询学生表中所有学生信息,要求只显示前10行数据15)按成绩降序查询输出SC表中成绩大于等于70 分的所有学生的学号,要求只显示前2 行数据 , 若第 3 行

7、后的数据也等于70 分也要显示。16) 查询每个学生的学号、课程号及分数,同时统计每个学生的总分17) 查询每个学生的各科分数、最高分、最低分、总分、平均分5、用 T-SQL 语句完成下面的查询1) 查询学生的总人数2) 查询选修了课程的学生人数3) 计算选 2 号课程的学生平均成绩4) 查询选修 2 号课程的学生最高分数5) 求各个课程号及相应的选课人数6) 查询选修了2 门以上的课程的学生学号7) 查询每个学生及其选修课程的情况8) 查询每一门课的间接先修课( 即先修课的先修课) 9) 查询选修 2 号课程且成绩在90 分以上(包括90 分)的所有学生。6. 用 T-SQL 语句完成下面的

8、查询名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - 实验二数据的查询、更新徐龙琴、刘双印设计制作1) 查询与“刘晨”在同一个系学习的学生2) 查询选修了课程名为“数学”的学生学号和姓名3) 查询其它系中比信息系中某一学生年龄小的学生姓名和年龄4) 查询其它系中比计算机系所有学生年龄都小的学生姓名及年龄5) 查询所有选修了2 号课程的学生姓名6) 查询没有选修3 号课程的学生姓名7、用 T-SQL 语句完成下面的复杂查询1)至少选

9、修刘老师所授课程中一门课程的女学生姓名2)检索王同学不学的课程的课程号3)检索全部学生都选修的课程的课程号与课程名。4)检索选修课程包含刘老师所授课的学生学号。5)求选修课程号为2 的学生的平均年龄。6)求刘老师所授课程的每门课程的学生平均成绩。7)检索学号比刘同学大,而年龄比他小的学生姓名。8)求年龄大于女同学平均年龄的男同学姓名和年龄。9)求年龄大于所有女同学年龄的男学生姓名和年龄。10)检索每一门课程成绩都大于等于80分的学生学号、姓名和性别,并把检索到的值送往另一个已存在的基本表S(SNO,SNAME,SEX ) 。11)把选课数学课不及格的成绩全改为空值。12)把王同学的选课信息全部

10、删去。13)把低于总平均成绩的男同学成绩提高5。14)检索没有选修1课程的学生学号和姓名15)检索至少有一门课程超过学生95001一门成绩的学生学号16)向学生选修课程表中插入元组“学生95003 选修课程 1” 。17)求出女同学的每一年龄组(超过 10 人)有多少人?要求查询结果按人数升序排列,人数相同的按年龄降序排列。18)定义视图S_AVG ,其中包括学生学号以及每个学生选修课程的门数(要求成绩非空)和平均成绩。四、思考题1、在创建基本表时是否可以缺省主码?2、简述 GROUP BY 、COMPUTE 、COMPUTE BY的区别?/*create database 学生课程数据库*/

11、*1*/ /*sp_addtype char20,varchar(20),null*/ /*create table Student ( Sno int primary key , Sname char(10) not null, Ssex char(2) check (Ssex in (男,女), Sage smallint check(Sage between 15 and 45), Sdept char(20) default CS, )*/*9*/ /*insert into Student values(95001, 李敏勇 , 男 ,20, CS) insert into Stud

12、ent values(95002, 刘晨 , 女,19, IS) insert into Student values(95003, 王敏 , 女,18, MA) insert into Student values(95004, 张立 , 男,18, IS)*/*13*/ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - 实验二数据的查询、更新徐龙琴、刘双印设计制作/*create table Course( Cno char(

13、4) primary key, Cname char(10) not null, Cpno char(2) , Credit char(2) , Teacher char20 )*/*20*/ /*create table SC( Sno int , Cno char(4) , Grade int check (Grade between 0 and 100), primary key (Sno,Cno), foreign key (Sno) references Student(Sno), foreign key (Cno) references Course(Cno) )*/*28*/ /

14、*insert into Student values(95030, 谢非 ,男,22,CS)*/ /*select Sno from Student where Sname=李敏勇 select Cno from Course where Cname= 数据库 */ /*update SC set Grade=98 where Sno=95001 and Cno=1*/ /*delete from Student where Sname=谢非 */ /*delete from Student where Sname=王敏 */ /*select Sno,Sname,Sage from Stu

15、dent*/ /*select Sname,Sage,系名 =LOWER(Sdept) from Student*/ /*select distinct Sno from SC*/ /*select Sname from Student where Sdept=IS*/ /*select Sname ,Sage from Student where Sage=70 order by Grade desc*/ /*select Sno,Cno,Grade from SC order by Sno,Cno,Grade compute SUM(Grade) by Sno*/ /*select * f

16、rom SC order by Sno,Cno,Grade compute max(Grade),min (Grade),sum(Grade),avg(Grade)by Sno*/ /*select COUNT (distinct Sno)as 学生总人数 from Student*/ /*select 学生总人数 =COUNT(distinct Sno) from SC*/ /*select AVG(Grade)2 号课程的学生平均成绩 from SC where Cno=2*/ /*select MAX(Grade) 选修 2 号课程的学生最高分数 from SC where Cno=2*

17、/ /*select Cno, 课程选课人数=COUNT(distinct Sno) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 9 页 - - - - - - - - - 实验二数据的查询、更新徐龙琴、刘双印设计制作from SC group by Cno*/ /*select Sno from SC group by Sno having COUNT (Cno)2*/ /*select Student.Sno,Cname from SC,Course,Studen

18、t where Student.Sno=SC.Sno and Course.Cno=SC.Cno*/ /*select x.Cno, y.Cpno from Course x,Course y where x.Cno=y.Cno*/ /*select Sno from SC where Grade=90 and Cno=2*/ /*select x.Sno,x.Sname from Student x,Student y where x.Sdept=y.Sdept and x.Sname!=刘晨 and y.Sname=刘晨 */ /*select x.Sno,x.Sname from Stu

19、dent x join Student y on x.Sdept=y.Sdept where x.Sname!= 刘晨 and y.Sname=刘晨 */ /*select Student.Sno,Student.Sname from Course,Student,SC where Student.Sno=SC.Sno and Course.Cno=SC.Cno and Course.Cname=数学 */ /*select y.Sno,y.Sage from Student x join Student y on x.Sno=y.Sno where y.Sdept!=ISand y.Sage

20、any( select Sage from Student where Sdept=IS)*/ /*select x.Sname,x.Sage from Student x join Student y on x.Sno=y.Sno where x.Sdept!=ISand x.Sageall(select Sage from Student where Sdept=IS)*/ /*select distinct Sname from Student,Course,SC where Student.Sno=SC.Sno and Course.Cno=SC.Cno and SC.Cno=2*/

21、/*select distinct Sname from Student,Course,SC where Student.Sno=SC.Sno and Course.Cno=SC.Cno 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 9 页 - - - - - - - - - 实验二数据的查询、更新徐龙琴、刘双印设计制作and SC.Cno!=3*/ /*select Sname from Student,Course,SC where Student.Sno=SC.S

22、no and Course.Cno=SC.Cno and Course.Teacher like刘%and Student.Ssex=女*/ /*select Cno from Course where Cno not in( Select SC.Cno from Student,SC,Course where Student.Sno=SC.Sno and Course.Cno=SC.Cno and Student.Sname like 王% )*/ /*select Cno,Cname from Course where not exists (select * from Student w

23、here not exists (select * from SC where SC.Sno=Student.Sno and SC.Cno=Course.Cno ) )*/ /*select Sno from SC x where not exists ( select * from Course where Teacher like 刘% and not exists ( select * from SC y where y.Cno=Course.Cno and y.Sno=x.Sno)*/ /*Select AVG(Sage) from Student,Course,SC where Co

24、urse.Cno=SC.Cno and Student.Sno=SC.Sno and Course.Cno=2*/ /*Select Teacher ,Cname ,AVG(Grade) from Student,SC,Course where Student.Sno=SC.Sno and Course.Cno=SC.Cno and Teacher like 刘% group by Teacher ,course.Cno,Cname*/ /*select Sname from Student 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - -

25、- - - 名师精心整理 - - - - - - - 第 7 页,共 9 页 - - - - - - - - - 实验二数据的查询、更新徐龙琴、刘双印设计制作where Sage( select Sno from Student where Sname=刘同 )*/ /*select Sname,Sage from Student where Ssex =男and Sage( select avg(Sage) from Student where Ssex=女 )*/ /*select Sname,Sage from Student where Ssex=男 and Sageall(selec

26、t Sage from Student where Ssex=女)*/ /*select Sno SNO ,Sname SNAME,Ssex SEC into S from Student where Sno not in ( select Sno from SC where Grade80)*/ /*update SC set Grade = where Sno=( select Sno from SC where Grade60 ) and Cno=( select Cno from Course where Cname=数学 )*/ /*delete from SC where Sno=

27、( select Sno from Student where Sname like 王%)*/ /*update SC set Grade=Grade*1.05 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 9 页 - - - - - - - - - 实验二数据的查询、更新徐龙琴、刘双印设计制作where Cno in ( select SC.Cno from SC,Student where Ssex=男 and Grade any( select Grade fr

28、om SC where Sno=95001)*/ /*insert into SC(Sno,Cno) values (95003,1)*/ /*select Sage, COUNT(Sno) 人数from Student where Ssex=女 group by Sage having COUNT(*)10 order by COUNT(Sno),Sage desc*/ /*create view S_A VG( 学号 ,选课门数 ,平均成绩 ) as select Sno,COUNT(Cno),A VG(Grade) from SC where grade is not null group by Sno*/ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 9 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁