您好,欢迎访问三七文档
当前位置:首页 > 法律文献 > 理论/案例 > shu数据库研讨、实验、作业题
第1周(第四章:SQL体系结构、组成、建库建表,索引自学)一、实验课:1.建立school数据库2.在school下建立如下数据库表,根据表中数据选取合适的数据类型及宽度,设置各表的主键及表间外键联系:注意:字段名是对应汉字字段名的汉语拼音第一个字母组合而成学生表S:学号,姓名,性别,出生日期,籍贯,手机号码,院系号;表1:Sxhxmxbcsrqjgsjhmyxh1101李明男1993-03-06上海13613005486021102刘晓明男1992-12-08安徽18913457890011103张颖女1993-01-05江苏18826490423011104刘晶晶女1994-11-06上海13331934111011105刘成刚男1991-06-07上海18015872567011106李二丽女1993-05-04江苏18107620945011107张晓峰男1992-08-16浙江1391234107801院系表D:院系号,名称,地址,联系电话;表2:Dyxhmc地址lxdh01计算机学院上大东校区三号楼6534756702通讯学院上大东校区二号楼6534123403材料学院上大东校区四号楼65347890教师表T:工号,姓名,性别,出生日期,学历,基本工资,院系编号;表3:Tghxmxbcsrqxljbgzyxh0101陈迪茂男1973-03-06副教授3567.00010102马小红女1972-12-08讲师2845.00010201张心颖女1960-01-05教授4200.00020103吴宝钢男1980-11-06讲师2554.0001课程表C:课号,课名,学分,学时,院系号;(默认学分4,学时40)表4:Ckhkmxfxsyxh08305001离散数学4400108305002数据库原理4500108305003数据结构4500108305004系统结构6600108301001分子物理学4400308302001通信学33002开课表O:学期,课号,工号,上课时间;表5:Oxqkhghsksj2012-2013秋季083050010103星期三5-82012-2013冬季083050020101星期三1-42012-2013冬季083050020102星期三1-42012-2013冬季083050020103星期三1-42012-2013冬季083050030102星期五5-82013-2014秋季083050040101星期二1-42013-2014秋季083050010102星期一5-82013-2014冬季0830200102101星期一5-8选课表E:学号,学期,课号,工号,平时成绩,考试成绩,总评成绩;(成绩范围1-100)表6:Exhxqkhghpscjkscjzpcj11012012-2013秋季08305001010360606011022012-2013秋季08305001010387878711022012-2013冬季08305002010182828211022013-2014秋季083050040101nullnullnull11032012-2013秋季08305001010356565611032012-2013冬季08305002010275757511032012-2013冬季08305003010284848411032013-2014秋季083050010102nullnullnull11032013-2014秋季083050040101nullnullnull11042012-2013秋季08305001010374747411042013-2014冬季083020010201nullnullnull11062012-2013秋季08305001010385858511062012-2013冬季08305002010366666611072012-2013秋季08305001010390909011072012-2013冬季08305003010279797911072013-2014秋季083050040101nullnullnull3.在学生表中建立索引idx1:院系号升序,姓名降序在课程表中建立索引idx2:课名二、研讨课:(参考答案)1.请说明school数据库中各表的主键和外键。同时说明:在学生表中的yxh字段输入“04”或在院系表中删除yxh为“01”记录,会有什么结果?2.什么是关系型数据库?什么是非关系型数据库?各举1个典型产品简单介绍他们特点?3.教师表中定义两个检查约束:第2周(第四章:投影、选择、多表连接和嵌套,排序自学)一、实验课:1.查询2011年进校年龄大于20岁的男学生的学号与姓名。2.检索刘晓明不学的课程的课程号。3.检索马小红老师所授课程的学年,学期,课程号,上课时间。4.查询计算机学院男生总评成绩及格、教授开设的课程的课程号、课名、开课教师姓名,按开课教师升序,课程号降序排序。5.检索学号比张颖同学大,年龄比张颖同学小的同学学号、姓名。6.检索同时选修了“08305001”和“08305002”的学生学号和姓名。二、研讨课:1.用四种方法表达查询:检索马小红老师所授课程的学期,课程号,上课时间。2.检索有学生重修的教师编号和姓名。3.如果O表加一个个开课编号(标识码)会带来哪些影响(优缺点)?第3周(第四章:除法、聚合函数、分组、集合操作,外连接自学)一、实验课:1.验证在1000万个以上记录时在索引和不索引时的查询时间区别。2.查询每个学生选课情况(包括没有选修课程的学生)。3.检索所有课程都选修的的学生的学号与姓名。4.检索选修课程包含1106同学所学全部课程的学生学号和姓名。5.查询每门课程中分数最高的学生学号和学生姓名。6.查询年龄小于本学院平均年龄,所有课程总评成绩都高于所选课程平均总评成绩的学生学号、姓名和平均总评成绩,按年龄排序。二、研讨课:1.什么是聚集索引?什么是非聚集索引?索引的作用是什么?请说明上述实验题1的验证过程及所得到的结果?2.用多种方法表达查询:检索同时选修了“数据库原理”和“离散数学”的学生学号和姓名。3.查询每门课的排名,输出课程号,学号,总评成绩,排名;按课程号升序,课程相同按排名从高到低。(提示:某个同学一门课的排名就是该门课成绩大于等于他的人数)第4周(第四章:数据更新、视图、嵌入式SQL部分自学)一、实验课:1.建立计算机学院总评不及格成绩学生的视图,包括学生学号、姓名、性别、手机、所选课程和成绩。2.在E表中插入记录,把每个学生没学过的课程都插入到E表中,使得每个学生都选修每门课。3.求年龄大于所有女同学年龄的男学生姓名和年龄。4.在E表中修改08305001课程的平时成绩,若成绩小于等于75分时提高5%,若成绩大于75分时提高4%。5.删除没有开课的学院。6.查询优、良、中、及格、不及格学生人数二、研讨课:1.补全下面程序段虚线框中的语句,使该程序能够正确地利用给出的数据库,逐个显示年龄高于某个值(通过共享变量maxage给出)的学生的学号、姓名、性别、院系号,并按用户的当场要求,保持或修改这个学生的院系号(通过共享变量newdno中给出)。voidChangeDNO(){…EXECSQLBEGINDECLARESECTION;intmaxage;charxh[7],xm[9],sex[3],yxh[4],newdno[4];EXECSQLENDDECLARESECTION;…gets(maxage);…EXECSQLOPENexwhile(1){if(SQLCA.SQLSTATE!=‘00000’)break;printf(“%s,%s,%s,%s”,eno,ename,sex,yxh);printf(“UPDATEDNO?”);scanf(“%c”,&yn);if(yn==‘y’oryn=‘Y’){printf(“INPUTNEWDNO:”);EXECSQLDECLAREEXECSQLscanf(“%c”,&newdno);}}EXECSQLCLOSEex;…2.1)用多种方法表达查询:检索刘晓明不学的课程的课程号。2)删除没有开课的学院。3.视图1)判断实验课第一题的视图能否更新。2)设计一个能更新的视图,要求更新后的数据满足视图定义的范围:“系统结构”还未有总评成绩的选课视图。写出如下对视图的更新命令,并判断是否可行,如不可行请说出理由插入数据(1107,2013-2014秋季,08305004,0101,null,null,null)插入数据(1107,2012-2013冬季,08305002,0102,null,null,null)将所有学生平时成绩增加10分,但不能超过100分EXECSQLUPDATEEXECSQL第5周(第一、二章:数据管理、数据库技术、数据库体系结构、DBMS,自学DBS)一、实验课:抽查前四周的实验内容二、研讨课:根据上半学期的学习情况,对学生在学习中的问题,两个班合班上习题课三、作业:数据库中的“3”1.数据库发展史上的3个里程碑2.数据库界3个图灵奖获得者3.数据管理的3个阶段4.3种数据模型5.数据库系统3层体系结构6.数据抽象过程中的3个世界7.数据描述时的3层设计8.数据模型3要素9.3种数据模式10.数据库的3次大论战11.关系数据库的3种完整性约束12.能唯一标识关系中每一行的属性或属性组,有那3种键13.实体间的联系有那3种14.关系的3种更新15.文件系统的3个缺点第6周(第二、六章:E_R模型和扩展E-R模型)一、实验课:数据库连接编程(PB10.0与SQLServer):第13章实验5-1二、研讨课:1.根据以下说明设计实体联系图【说明】某单位资料室需要建立一个图书管理系统,初步的需求分析结果如下:(1)资料室有图书管理员若干名,他们负责已购入图书的编目和借还工作,每名图书管理员的信息包括工号和姓名;(2)读者可在阅览室读书,也可通过图书流通室借还图书,读者信息包括读者ID、姓名、电话和Email,系统为不同读者生成不同的读者ID;(3)每部书在系统中对应惟一的一条图书在版编目数据(CIP,以下简称书目),书目的基本信息包括ISBN号、书名、作者、出版商、出版年月,以及本资料室拥有该书的册数(以下简称册数),不同书目的ISBN号不相同;(4)资料室对于同一书目的图书可拥有多册(本),图书信息包括图书ID、ISBN号、存放位置、当前状态,每一本书在系统中被赋予惟一的图书ID;(5)一名读者最多只能借阅十本图书,且每本图书最多只能借两个月,读者借书时需由图书管理员登记读者ID、所借图书ID、借阅时间和应还时间,读者还书时图书管理员在对应的借书信息中记录归还时间;(6)当某书目的可借出图书的数量为零时,读者可以对其进行预约登记,即记录读者ID、需要借阅的图书的ISBN号、预约时间。某书目的信息如表1-1所示,与该书目对应的图书信息如表1-2所示。表1-1书目信息书名作者出版商ISBN号出版年月册数经办人《数据结构》严蔚敏吴伟民清华大学出版社ISBN7-302-02368-91997.4401表1-2图书信息图书IDISBN号存放位置状态经办人C832.1ISBN7-302-02368-9图书流通室已借出01C832.2ISBN7-302-02368-9图书阅览室不外借01C832.3ISBN7-302-02368-9图书流通室未借出01C832.4ISBN7-302-02368-9图书流通室已预约01【系统的主要业务处理如下】(1)入库管理:图书购进入库时,管理员查询本资料室的书目信息,若该书的书目尚未建立,则由管理员编写该书的书目信息并录入系统,然后编写并录入图书信息;否则,修改该书目的册数,然后编写并录入图书信息,对于进入流通室的书,其初始状态为“未借出”,而送入阅览室的书的状态始终为“不外借”。(2)借书管理:读者借书时,若有,则由管理员为该读者办理借书手续,并记录该读者的借书信息,同时将借出
本文标题:shu数据库研讨、实验、作业题
链接地址:https://www.777doc.com/doc-7322176 .html