实验二 交互式SQL实验报告.docx
- 文档编号:3094130
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:3
- 大小:17.51KB
实验二 交互式SQL实验报告.docx
《实验二 交互式SQL实验报告.docx》由会员分享,可在线阅读,更多相关《实验二 交互式SQL实验报告.docx(3页珍藏版)》请在冰豆网上搜索。
实验二交互式SQL实验报告
实验二交互式SQL实验报告
。
试验一交互式SQL一实验目的1.熟悉数据库的交互式SQL工具。
2.熟悉通过SQL对数据库进行操作。
.完成作业的上机练习。
3二实验工具SQLServer20xx利用SQLServer20xx及其交互式查询来熟悉SQL语句。
三实验内容和要求1.在SQLServer20xx中建立一个数据库,进行实验所要求的各种操作,所有的SQL操作均在建立的新库里进行;2.根据以下要求认真填写实验报告,记录所有的实验用例的SQL语言;3.1数据定义
(1)熟悉基本表的创建、修改及删除。
(2)熟悉索引的创建和删除。
3.2数据操作
(1)完成各类查询操作(单表查询,连接查询,嵌套查询)等;;)完成各类更新操作(插入数据,修改数据,删除数据)(23.3视图的操作视图的定义(创建和删除),查询,更新(注意更新的条件)。
3.4具体操作内容在MSSQLServer中创建学生-课程数据库,要求有学生表(Student)、课程表(Course)和选课表(SC),向三个表中分别插入相关数据,再用SQL语句完成一下要求的查询。
1.使用SQL语言创建下面的三个表。
表一:
学生信息表(Student)列名说明数据类型约束Sno学号字符串,长度为10非空Sname姓名字符串,长度为20非空Ssex性别字符串,长度为10非空Sage年龄字符串,长度为10非空Sdept所在系字符串,长度为10非空表二:
课程信息表(Course)列名说明数据类型约束Cno课程号整形非空Cname课程名字符串,长度为20非空Cpno先行课整型允许为空Ccredit学分整型非空表三:
学生选课信息表(SC)精选资料,欢迎下载。
列名说明数据类型约束Sno学号字符串,长度为10Student的外码主码,引用Cno课程号整型的外码主码,引用CourseGrade成绩字符串,长度为100~100取值在以上的三个表中,分别插入下面的数据;2.)表一:
学生信息表(StudentSnoSnameSsexSageSdept20xx15121李勇男20CS20xx15122刘晨女19CS20xx15123王敏女18MA20xx15125张立男19ISCourse)表二:
课程信息表(CnoCnameCpnoCcredit1数据库542数学23信息系统144操作系统635数据结构746数据处理27语言PASCAl64)表三:
学生选课信息表(SCSnoCnoGrade20xx1512119220xx1512128520xx1512138820xx1512229020xx15122380语句:
根据上面的三种表,写出完成如下查询功能的SQL3.
(1)查询全体学生的姓名、出生年份和所在的院系,要求用小写字母表示所有系名
(2)查询选修了课程的学生学号23岁)之间的学生的姓名、系别、年龄岁(包括20岁和查询年龄在(3)20~23)学生的姓名和性别MA)和信息系(IS(4)查询计算机科学系(CS)、数学系(i个字符为的课程的详细情况(5)查询以“DB_”开头,且倒数第3查询全体学生情况,查询结果按所在系的系号升序排列,同一系中的学生按年龄降序(6)排列号课程的学生最高分数、最低分数、平均分数查询选修(7)1门课程的学生学号查询选修了3(8)(9)查询每一门课的间接先修课(即先修课的先修课)90号课程且成绩大于等于分的所有学生2(10)查询选修查询与‘刘晨'在同一个系学习的学生(11)精选资料,欢迎下载。
(12)查询其他系中比计算机科学系所有学生年龄都小的学生姓名及年龄(13)将一个新学生元组(学号:
20xx15128;姓名:
陈冬;性别:
男;所在系:
IS;年龄:
18岁)插入到Student表中(14)将学生20xx15121的年龄改为22岁(15)删除学号为20xx15128的学生记录(16)建立信息系学生的视图(17)在信息系学生的视图中找出年龄小于20岁的学生(18)的学生姓名改为“刘辰”20xx15122is_Student中学号为将信息系学生视图四实验报告4.1实验环境:
WindowsXPMicrosoftSQLserverManagementStudio20xx4.2实验内容与完成情况:
(1)查询全体学生的姓名、出生年份和所在的院系,要求用小写字母表示所有系名SELECTSnameNAME,'YearofBirth:
'BIRTH,20xx-SageBIRTHDAY,LOWER(Sdept)DEPARTMENTFROMStudent;
(2)查询选修了课程的学生学号SELECTDISTINCTSnoFROMSC;(3)查询年龄在20~23岁(包括20岁和23岁)之间的学生的姓名、系别、年龄SELECTSname,Sdept,SageFROMStudentWHERESageBETWEEN20AND23;(4)查询计算机科学系(CS)、数学系(MA)和信息系(IS)学生的姓名和性别SELECTSname,SsexFROMStudentWHERESdeptIN('CS','MA','IS');(5)查询以“DB_”开头,且倒数第3个字符为i的课程的详细情况精选资料,欢迎下载。
SELECT*FROMCourseWHERECnameLIKE'DB\_%__'ESCAPE'\';查询全体学生情况,查询结果按所在系的系号升序排列,同一系中的学生按年龄降序排列(6)SELECT*FROMStudentORDERBYSdept,SageDESC;1号课程的学生最高分数、最低分数、平均分数(7)查询选修SELECTMAX(Grade)MAX,MIN(Grade)MIN,AVG(Grade)AVGFROMSCWHERECno='1';3门课程的学生学号(8)查询选修了SELECTSnoFROMSCGROUPBYSnoHAVINGCOUNT(*)>3;查询每个学生及其选修课程的情况)(8)SELECTStudent.Sno,Sname,Ssex,Sage,Sdept,Cno,GradeFROMStudent,SCWHEREStudent.Sno=SC.Sno;①查询每一门课的间接先修课(即先修课的先修课)(9)SELECTfirst.Cno,second.CpnoFROMCoursefirst,CoursesecondWHEREfirst.Cpno=second.Cno;②查询每一门课的间接先修课(即先修课的先修课)(消除有空的行)SELECTfirst.Cno,second.CpnoFROMCoursefirst,CoursesecondWHEREfirst.Cpno=second.Cnoandsecond.Cpnoisnotnull;分的所有学生2号课程且成绩大于等于90(10)查询选修①Student.Sno=SC.SnowherefromSdeptStudent,SCStudent.Sno,Sname,Ssex,Sage,selectandCno='2'andGrade>=90;②selectSno,Sname,Ssex,Sage,SdeptfromStudentwhereSno=(selectSnofromScwhereCno='2'andgrade>='90');精选资料,欢迎下载。
查询与‘刘晨'在同一个系学习的学生(11)①selectSno,Sname,SdeptfromStudentwhereSdeptin(selectSdeptfromStudentwhere');刘晨Sname='②andS1.Sdept=s2.SdeptS2whereselectS1.Sno,S1.Sname,S1.sdeptfromStudentS1,student';刘晨S2.Sname='③selectSno,Sname,SdeptfromStudentwhereSdept=(selectSdeptfromstudentwhere');Sname='刘晨④selectSno,Sname,SdeptfromStudentS1whereexists(select*fromStudentS2where');S2.Sdept=S1.SdeptandS2.Sname='刘晨(12)查询其他系中比计算机科学系所有学生年龄都小的学生姓名及年龄①selectSname,SagefromStudentwhereSage'CS';②selectSname,SagefromStudentwhereSage'CS';;年龄:
;姓名:
陈冬;性别:
男;所在系:
20xx15128IS(13)将一个新学生元组(学号:
Student表中18岁)插入到insertintoStudent(Sno,Sname,Ssex,Sdept,Sage)','IS','18');男values('20xx15128','陈冬','select*fromStudent;岁20xx15121)将学生的年龄改为2214(updateStudentsetSage='22'whereSno='20xx15121';select*fromStudent;精选资料,欢迎下载。
(15)删除学号为20xx15128的学生记录deletefromStudentwhereSno='20xx15128';select*fromStudent;(16)建立信息系学生的视图createviewis_StudentasselectSno,Sname,SagefromStudentwhereSdept='IS';(17)在信息系学生的视图中找出年龄小于20岁的学生selectSno,Sagefromis_StudentwhereSage<20;(18)将信息系学生视图is_Student中学号为20xx15122的学
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验二 交互式SQL实验报告 实验 交互式 SQL 报告