您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 资本运营 > 数据库开发与应用试卷-2008-2009(2)A
浙江工业大学期终考试命题稿2008/2009学年第二学期课程名称数据库技术已应用使用班级电信07(1、2)教师份数4学生份数62命题人审核人命题总页数4页每份试卷需用白纸3大张命题注意事项:一、命题稿请用A4纸电脑打印,或用教务处印刷的命题纸,并用黑墨水书写,保持字迹清晰,页码完整。二、两份试题必须同等要求,卷面上不要注明A、B字样,由教务处抽定A、B卷。三、命题稿必须经学院审核,并在考试前两周交教务处。浙江工业大学2008/2009学年第二学期试卷课程________________________________姓名___________________________班级_______________________________________________________________题序一二三四五六七八九十总评计分一、填空题(每空0.5分,共15分)1.数据表的关联性主要有:1:1、1:n和m:n关联性。2.数据库管理系统结构模式主要有:桌面型关系数据库系统、客户机/服务器和浏览器/服务器三种。3.数据模型从结构上区分由_层次模型、网状模型_和_关系模型_三种基本模型。4.SQLServer系统的数据库存储结构是:__数据____和____日志____两个文件。5.如果两个实体之间具有M:N联系,则将它们转换为关系模型的结果是____3___个表。6.SQLServer数据库系统采用验证方式有Windows验证和Windows、SQLServer混合验证__。7.数据库的事务是:作为一个逻辑工作单元执行的一系列操,事务作为逻辑工作单元必须具备四个属性原子性、一致性、隔离性、持久性。8.关系代数中专门的关系运算包括:选择、投影、_连接_和除法。9.SQLServer2000中,字符型包括__char__和___varchar__两种类型。前者称为固定长度字符型,后者称为可变长度字符型。10.数据库并发操作通常会带来三类问题,它们是丢失更新、不可重复读和脏读。11.SQL语言中,用于事务回滚的语句是__RollbackTransaction__。12.SQLServer2000索引分为__唯一索引、主键索引、聚集索引__三种类型。二、选择题(每题2分,共20分)1.如果事务T获得了数据项Q上的排它锁,则T对QC。A.只能读不能写B.只能写不能读C.既可读又可写D.不能读不能写2.SQL语言集数据查询、数据操作、数据定义、和数据控制功能于一体,语句CREATE、DROP、ALTER实现下列哪类功能C。A.数据查询B.数据操纵C.数据定义D.数据控制第1页浙江工业大学考试命题纸3.下列哪一个数据库不是SQLServer2000的系统数据库C。A.master数据库B.msdb数据库C.pubs数据库D.model数据库4.下列哪一种约束是对数据表的字段级的:C。A.主键(PK)B.外键(FK)C.规则D.唯一性(Unique)5.SQLServer提供的单行注释语句是使用B开始的一行内容。A.“/*”B.“--”C.“{”D.“/”6.与WHEREGBETWEEN60AND100语句等价的子句是:D。A.WHEREG60ANDG100B.WHEREG=60ANDG100C.WHEREG60ANDG=100D.WHEREG=60ANDG=1007.要查询STUDENT数据库S表中姓名含有“诗”的学生情况,可用A命令。A.SELECT*FROMSWHERE姓名LIKE’%诗%’B.SELECT*FROMSWHERE姓名LIKE’诗’C.SELECT*FROMSWHERE姓名LIKE’诗_’D.SELECT*FROMSWHERE姓名=’诗’8.数据库的内容更新可由C操作实现。A.CREATE和UPDATEB.INSERT和SELETEC.INSERT、UPDATE和DELETED.DROP9.在视图上不能完成的操作是D。A.在视图上定义新的视图B.查询操作C.更新视图D.在视图上定义新的基本表10.有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于C。A.实体完整性约束B.参照完整性约束C.用户自定义完整性约束D.关键字完整性约束三、程序设计(每小题7分,共35分)1.用T-SQL语言编写创建一个教师数据表,内容包括教师编号(Tid),10位编码长度,教师名(Tname),4个汉字、性别(sex),1个汉字,年龄(age),整型,所在学院(academy),50个汉字长度,以教师编号作为主键,性别默认为’男’,年龄须小于60岁,并建立男教师信息的视图。2.在学生数据表(student)中,表中有学号(no)、姓名(name)、性别(sex)、年龄(age)等字段,用T-SQL语言插入学号为’1005’,姓名叫’王芳’,年龄20岁的女同学的信息?在此基础上,修改王芳的同学的年龄为19岁,并编写T-SQL程序?第2页浙江工业大学考试命题纸3.用T-SQL编写1到100中偶数的累加值。4.编写一个触发器,实现不让年龄小于18岁员工信息插入到员工表(Employee)中,员工表包括员工编号(EId)、员工姓名(EName)、性别(Sex)、年龄(Age)等信息。5.用T-SQL编写,创建数据库Stu,数据文件初始大小5M,日志文件5M,都按10%增长,文件存放于D:\Data中。四、程序阅读(共10分)1.阅读下列程序,并在右侧(--注释:标记后)进行程序注释(5分)declare@avg_gradevarchar(10),@s#varchar(14),@snamevarchar(10),@messagevarchar(100)declareavg_gradecursor--注释:定义游标scroll--注释:游标类型滚动游标forselects.s#,s.sname,avg(grade)froms,scwheres.s#=sc.s#groupbys.s#,s.snameorderbys.s#openavg_grade--注释:打开游标fetchnextfromavg_gradeinto@s#,@sname,@avg_gradewhile@@FETCH_STATUS=0--注释:判断游标执行状态beginselect@message='-----学号:'+@s#+'姓名:'+@sname+'平均成绩:'+@avg_gradeprint@messagefetchnextfromavg_gradeinto@s#,@sname,@avg_gradeendcloseavg_grade--注释:关闭游标deallocateavg_grade--注释:释放游标第3页浙江工业大学考试命题纸2.阅读和注释程序,并写出本程序运行结果。(5分)createprocedurexp_fac@eintasdeclare@sint,@nint,@tint,@cintset@s=0set@n=1while@n=@ebeginset@c=1set@t=1while@c=@nbeginset@t=@t*@cset@c=@c+1endset@s=@s+@tset@n=@n+1endselect@s运行:execxp_fac5输出值:153五、应用题(共20分)1.编写和设计一个简单学生学籍管理的程序,其中有学生(Student)实体属性有学号(SID)、姓名(SName)、性别(Sex)、年龄(Age)、所在系(Dept),课程(Course)实体属性有课程编号(CID)、课程名称(CName)、学分(Cre),假设一门课可以有多个学生选课,一个学生也可以选择多门课程学习,要求(20分)(1)请画出学生和课程的E-R图;4(2)根据E-R图,构造其关系模型;3(3)设计学生表、课程表和选课表数据结构,并设计数据结构的字段名、类型、长度,小数点位数(如果上数值),可以用表的方式或T-SQL命令方式;3(4)设置学生表和课程表的主健(PK)和外健(FK)的字段名;3(5)查询成绩大于90分的学生名单,并按照学号升序排列;2(6)用聚合函数,统计班级的平均成绩;2(7)将女同学的C1课程的成绩提高10%。3第4页解答:三、1、CreateTableTeacher(Tidchar(10)NOTNULLPrimaryKey,Tnamenvarchar(8)NULL,Sexchar(2)NULLDEFALUT‘男’,AgeintNULLcheck(age60),Academyvarchar(50))CreateViewTeacher_MaleAsSelect*fromTeacherwhereSex=’男’2、InsertIntoStudent(no,name,sex,age)Values(‘1005’,’王芳’,’女’,20)UpdateStudentSetage=19Wherename=’王芳3、Declare@myresultint@myvarintSet@myvar=0Set@myresult=0While@myvar=100BeginIf@myvar%2=0BeginSet@myresult=@myresult+@myvarENDSet@myvar=@myvar+1EndPrint@myresult’4、CreatetriggerTR_INOnemployeeForinsert,updateAsDeclare@ageBeginSelect@age=agefrominsertedIf@age18RollbacktransactionPrint‘员工小于18岁员’End5、USEmasterGOCREATEDATABASEStuON(NAME=Stu_Data,FILENAME='D:\data\Stu_Data.mdf',SIZE=5MB,MAXSIZE=5,FILEGROWTH=10)LOGON(NAME='Stu_Log',FILENAME='D:\data\Stu_Log.ldf',SIZE=5MB,MAXSIZE=5MB,FILEGROWTH=10)GO七、createtableStudent(SIDvarchar(15)notnullPrimarykey,SNamevarchar(10)null,Sexchar(2)null,Agesmallintnull,Deptvarchar(10)null)createtableCourse(CIDvarchar(15)notnullPrimarykey,CNamevarchar(40)null,Crenumeric(5,1)null)createindexSC_FKonSC(SIDvarchar(15)notnull,CIDvarchar(15)notnull,Scorenumeric(5,1)null)goaltertableSCaddconstraintFK_SC_SC_STUDENTforeignkey(SID)referencesStudentgoaltertableSCaddconstraintFK_SC_SC2_COURSEforeignkey(CID)referencesCoursego(4)3(5)3selects.sno,sc,scorefroms,scwheres.sno=sc.snoandscore90orderbys.sno(6)2Selectcid,avg(score)fromscgroupbycid(7)3updatescsetscore=score+score*0.1wheresnoin(selectsnofromswheresex='女')[评分标准:]
本文标题:数据库开发与应用试卷-2008-2009(2)A
链接地址:https://www.777doc.com/doc-6024308 .html