ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:20.72KB ,
资源ID:18114355      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18114355.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库实验3答案Word文件下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库实验3答案Word文件下载.docx

1、创建视图视图查询参考示例:建立一个学生选课数据库,练习对表、视图和索引等数据库对象的各种操作。一、数据定义 创建学生选课数据库ST,包括三个基本表,其中Student表保存学生基本信息,Course表保存课程信息,SC表保存学生选课信息,其结构如下表:表1. Student表结构列名称用途类型长度约束备注Sno学号字符8主键Sname姓名Ssex性别2Sage年龄整型Sdept所在系20Sclass班级4表2. Course表结构Cno课程号Cname课程名40Cpno先修课程号 Ccredit学分表3. SC表结构外键Grade成绩1创建、修改及删除基本表 (1)创建Student表CREA

2、TETABLEStudent(SnoCHAR(8)PRIMARYKEY,SnameCHAR(8),SsexCHAR(2)NOTNULL,SageINT,SdeptCHAR(20);(2)创建Course表CREATETABLECourse(CnoCHAR(4)PRIMARYKEY,CnameCHAR(40)NOTNULL,CpnoCHAR(4),CcreditSMALLINT,(3)创建SC表CREATETABLESC(SnoCHAR(8)FOREIGNKEY (Sno)REFERENCESStudent(Sno),CnoCHAR(4),GradeSMALLINT,(4)创建员工表Employ

3、eeCREATETABLEEmployee(编号CHAR(8)PRIMARYKEY,姓名VARCHAR(8)notnull部门CHR(40),工资numeric(8,2),生日datetime,职称char(20),指出该语句中的错误并改正后执行。(5)检查表是否创建成功SELECT*FROMStudentSELECT*FROMCourseSELECT*FROMSCSELECT*FROMEmployee(6)修改表结构及约束增加班级列ALTERTABLEStudentADDSclasschar(4)修改年龄列ALTERTABLEStudentALTERCOLUMNSagesmallint增加约

4、束ALTERTABLECourseADDUNIQUE(Cname)(7)删除表 DROPTABLEEmployee2创建索引(1)为Course表按课程名称创建索引CREATEINDEXiCnameOnCourse(Cname)(2)为Student表按学生姓名创建唯一索引CREATEUNIQUEINDEXiSnameONStudent(Sname)(3)为SC表按学号和课程号创建聚集索引CREATECLUSTEREDINDEXiSnoCnoOnSC(Sno,Cnodesc)(4)为Course表按课程号创建唯一索引请自己完成该操作3创建视图建立信息系学生的视图:CREATEVIEWIS_St

5、udentASSELECTSno,Sname,SageFROMStudentWHERESdept=IS;将如下表格中的数据分别插入到数据库相应的表中:表4.学生基本信息表20100001李勇男CS100120100002刘晨女1920100021王敏18MA100220100031张立IS100320100003刘洋20100010赵斌100520100022张明明表5.课程信息表先修课程号1数据库系统原理56高等数学3管理信息系统操作系统原理65数据结构7数据处理C语言表6.学生选课信息表9285889080(1)插入到Student表INSERTINTOStudentVALUES(2010

6、0001,李勇男,20,CS1001)20100002刘晨女,19,INSERTINTOStudent(Sno,Sname,Ssex,Sage,Sdept,Sclass)VALUES(20100021王敏,18,MA1002INSERTINTOStudent(Sno,Sname,Ssex,Sage,Sdept,sclass)VALUES(20100031张立1003INSERTINTOStudent(Sno,Sname,Ssex,sclass)VALUES(20100003刘洋检查下列语句中的错误,并改正:INSERT INTO Student(Sno,Sname,Ssex,Sage,Sdep

7、t,sclass) VALUES(20100010,赵斌,191005INSERT INTO Student VALUES(20100022张明明(2)插入到Course表INSERTINTOCourse(Cno,Cname,Cpno,Ccredit)VALUES(1数据库系统原理5,4)2高等数学,null,2)3管理信息系统请写出插入其余行的插入语句,并插入数据。(3)插入到SC表INSERTINTOSCVALUES(,92),80)INSERTINTOSC(Sno,Cno)VALUES(INSERTINTOSC(Sno,Cno,Grade)VALUES(,null)请写出插入其余行的插入

8、语句,并运行。(4)多行插入到表中创建存一个表,保存学生的学号、姓名和年龄:CREATETABLEcs_Student学号char(8),姓名char(8),年龄smallint插入数据行:INSERTINTOcs_StudentSELECTSno,Sname,SageFROMstudentWhereSdept=(5)检查插入到表中的数据(1)将学生20100001的年龄改为22岁。UPDATEstudentSETSage= 22 WHERESno=(2)将所有学生的年龄增加一岁。UPDATEStudentSETSage=Sage+1(3)填写赵斌同学的管理信息系统课程的成绩UPDATESCS

9、ETGrade= 85WHERESno=ANDCno=(4)将计算机科学系全体学生的成绩加5分UPDATEscSETGrade=Grade+ 5WHERE=(selectSdeptfromstudentwherestudent.Sno=sc.Sno);(5)请自己完成如下操作将刘晨同学的2号课程成绩修改为80将“20100021”同学的学号修改为“20100025”(6)检查数据是否修改(1)删除学号为201000022的学生记录DELETEFROMStudentWHERESno=(2)删除学号20100001学生的1号课程选课记录将选课信息复制到一个临时表tmpSC中:SELECT*INTO

10、tmpSCFROMSC在tmpSC中执行删除操作:DELETEFROMtmpSCWHERESno=andCno=(3)删除临时表中20100002学生的全部选课记录请自己完成该操作。(4)删除计算机科学系所有学生的选课记录DELETEFROMtmpSCWHERE=(selectSdeptfromstudentwherestudent.Sno=tmpSC.Sno);(5)删除全部选课记录DELETEFROMtmpSC(6)检查数据是否删除 完成如下查询操作:(1)按指定目标列查询查询学生的详细记录:SELECT*FROMStudent;查询学生的学号、姓名和年龄SELECTSno,Sname,S

11、ageFROMStudent;(2)目标列包含表达式的查询查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名。SELECTSname,Year of Birth: ,2004-Sage,LOWER(Sdept)FROMStudent;(3)查询结果集中修改列名称asBIRTH, 2000-SageBIRTHDAY,DEPARTMENT=LOWER(Sdept)FROMStudent;(4)取消重复行查询选修了课程的学生学号:比较ALL和DISTINCT的区别SELECTSnoFROMSC;SELECTDISTINCTSnoFROMSC;(5)简单条件查询查询计算机科学系全体学生的

12、名单SELECTSnameFROMStudent WHERESdept=(6)按范围查询查询年龄在2023岁之间的学生的姓名、系别和年龄SELECTSname,Sdept,SageFROMStudentWHERESageBETWEEN 20 AND 23(7)查询属性值属于指定集合的行查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别SELECTSname,SsexFROMStudentWHERESdeptIN(8)模糊查询查询所有姓刘学生的姓名、学号和性别SELECTSname,Sno,SsexFROMStudentWHERESnameLIKE刘%(9)查询空值查询缺少

13、成绩的学生的学号和相应的课程号SELECTSno,CnoFROMscWHEREGradeisnull;(10)多重条件查询查询计算机科学系年龄在岁以下的学生姓名SELECTSnameFROMstudentWHERESdept=andSage 90(4)完成下面的查询统计每个同学的学号、选课数、平均成绩和最高成绩统计每个班的每门课的选课人数、平均成绩和最高成绩 (1)在WHERE中指定连接条件查询每个参加选课的学生信息及其选修课程的情况SELECTStudent.Sno,Sname,Ssex,Sage,Sdept,Cno,GradeFROMStudent,SCWHEREStudent.Sno=S

14、C.Sno查询每一门课的间接先修课SELECT*FROMcoursefirst,coursesecondWHEREfirst.Cpno=second.Cno;SELECTfirst.Cno,second.CpnoFROMcoursefirst,coursesecond(2)在FROM中指定连接条件FROMStudentJOINSCON (Student.Sno=SC.Sno)(3)使用外连接查询查询每个学生信息及其选修课程的情况FROMStudentLEFTOUTERJOINSCON (Student.Sno=SC.Sno)(4)复合条件连接查询查询选修号课程且成绩在分以上的所有学生SELEC

15、TStudent.Sno,SnameFROMStudentjoinSCON (Student.Sno=SC.Sno)/* 连接条件*/WHERESC.Cno=ANDSC.Grade 90;/* 过滤条件*/(5)多表查询查询每个学生的学号、姓名、选修的课程名及成绩SELECTStudent.Sno,Sname,Cname,GradeFROMStudent,SC,CourseWHEREStudent.Sno=SC.SnoANDSC.Cno=Course.Cno;(6)完成下列查询查询选修了2号课程的同学的学号和姓名查询各门课程的课程号、课程名称以及选课学生的学号查询选修了数据库系统原理课程的同学

16、的学号和姓名和成绩 (1)由In引出的子查询查询与“刘晨”在同一个系学习的学生SELECTSno,Sname,Sdept FROMStudentWHERESdeptIN(SELECTSdeptFROMStudent WHERESname= (2)由比较运算符引出的子查询找出每个学生超过他选修课程平均成绩的课程号。SELECTSno,CnoFROMSCxWHEREGrade=(SELECTAVG(Grade)FROMSCyWHEREy.Sno=x.Sno); (3)带修饰符的比较运算符引出的子查询查询其他系中比计算机科学系所有学生年龄都小的学生姓名及年龄。SELECTSname,SageFROM

17、StudentWHERESageALL(SELECTSageFROMStudentWHERESdept=ANDSdept (4)由EXISTS引出的子查询查询所有选修了1号课程的学生姓名SELECTSnameFROMStudentWHEREEXISTS(SELECT*FROMSCWHERESno=Student.SnoANDCno= (1)集合并查询计算机科学系的学生及年龄不大于19岁的学生SELECT*FROMStudentWHERESdept=UNIONSELECT*FROMStudentWHERESage=S_G.Gavg(3)查询每个学生的学号、姓名、选修的课程名及成绩SELECTSno,Sname,Cname,GradeFROMXK_VIEW(4)比较使用视图查询和直接从基表查询的优点

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

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