SQL数据库复习题.doc_第1页
SQL数据库复习题.doc_第2页
SQL数据库复习题.doc_第3页
SQL数据库复习题.doc_第4页
SQL数据库复习题.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

复习题年级专业: 教学班号: 学号: 姓名:装 订 线 一、名词解释实体:客观存在并可相互区别的个体域 :是一组具有相同数据类型的值的集合。 候选码:若关系中的某一属性或属性组的值能唯一地标识一个元组,则称该关系中所有满足此要求的属性或属性组为候选码。主码:若一个关系中有多个候选码,则选定其中一个为主码。外码:若一个关系R2 中的一个属性子集S 是另一个关系R1 的主码所对应的属性组,则称S 为R2 的外码。主属性:候选码中的诸(各)属性称为主属性。数据:对客观事物特征一种抽象的符号化的表示,即用一定的符号表示那些从观察或测量中所收集的基本事实数据库:计算机的存储设备上合理存放的相关联的有结构的数据集合码: 设K 为关系模式R 中的属性或属性组,若K -f-U则K为R的候选码,也称为码。参照完整性:考虑不同关系之间或同一关系的不同元组之间的制约数据字典:用于定义数据流程图中出现的所有数据元素和处理。通常包括数据项、数据流、数据存储和处理过程四个元素。二、选择题1. 在数据库中,下列说法( )是不正确的A数据库避免了一切数据的重复B若系统是完全可以控制的,则系统可确保更新时的一致性C数据库中的数据可以共享D数据库减少了数据冗余2. 设关系R和S的元组个数分别为100和300,关系T是R与S的笛卡尔积,则T的元组个数是 ( )A. 400 B. 10000 C. 30000 D. 900003. 为了防止一个用户的工作不适当地影响另一个用户,应该采取( ) A. 完整性控制 B. 安全性控制C. 并发控制 D. 访问控制 4. 有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于( ) A. 实体完整性约束 B. 参照完整性约束 C. 用户自定义完整性约束 D. 关键字完整性约束 5. 关系模型中,一个码是( )。A. 可以由多个任意属性组成B. 至多由一个属性组成C. 由一个或多个属性组成,其值能够惟一标识关系中一个元组D. 以上都不是6. 解决并发操作带来的数据不一致问题普遍采用( )A.封锁B.存取控制C.恢复D.协商7. 设有关系R,按条件f对关系R进行选择,正确的是( )ARR B CRfR Df (R)8 假设学生关系S(S,SNAME,SEX),课程关系C(C,CNAME),学生选课关系SC(S,C,GRADE)。要查询选修“Computer”课的男生姓名,将涉及到关系( )A. SB. S,SCC. C,SCD. S,C,SC9. 如果关系模式R中的每一个非主属性既不部分依赖也不传递依赖于键,则称这个关系模式属于( )A. 第一范式 B. 第二范式C. 第三范式D. BC范式10. 在数据库三级模式间引入二级映象的主要作用是( )A.提高数据与程序的独立性 B.提高数据与程序的安全性C.保持数据与程序的一致性 D.提高数据与程序的可移植性11. 设有一个关系:DEPT(DNO,DNAME),如果要找出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHERE DNAME LIKE ( )A. _ _ W _ % B. _ % W _ _ C. _ W _ _ D. _ W _ % 12、SQL的COMMIT语句的主要作用是( )A. 终止程序 B. 中断程序 C. 事务提交 D. 事务回退13、当局部ER图合并成全局ER图时可能出现冲突,不属于合并冲突的是( ) A属性冲突B语法冲突C结构冲突D命名冲突14、数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为( ) A数据定义功能 B数据管理功能 C数据操纵功能 D数据控制功能15.“授权”是DBS采用的( )A. 完整性措施B. 安全性措施 C. 恢复措施 D. 并发控制措施16、DB的转储属于DBS的 ( )A. 完整性措施B. 安全性措施 C.恢复措施 D. 并发控制措施17、DB技术中,“脏数据”是指( )A. 未提交的数据 B. 错误的数据 C. 未提交的随后又被撤消的数据 D. 回退的数据18、在数据库三级模式两级映射中与数据库全局逻辑独立性有关的是( )A. 模式 B. 内模式 C. 储存模式 D.外模式19、在数据库系统中,日志文件用于()A.保障事务的并发性 B.保障数据的安全性C.检测系统的死锁 D.数据库故障的恢复20、如果事务T获得了数据项Q上的排他锁,则T对Q( ) 。A.只能读不能写B.只能写不能读C.既可读又可写 D.不能读也不能写三、简答题1、数据库管理系统的主要功能有哪些?数据库定义功能数据库管理功能数据库的建立和维护功能数据组织、存储和管理功能通信功能2、试述关系模型的三个组成部分。数据结构 操纵与完整性约束 存储结构3、举例说明关系参照完整性的含义。R为参照关系,S为被参照关系,即关系R中属性的取值必须是关系S中K列中存在的值4、试述数据库设计过程。需求分析概念结构设计逻辑结构设计物理结构设计实现运行和维护5、什么是事务?事务具有哪四个特性?构成单一逻辑工作单元的操作集合原子性一致性隔离性持续性6、并发操作会带来哪三类不一致性?什么样的并发调度是正确的调度?丢失更新读脏数据不可重复读只有可串行性调度才是正确的调度方式7、数据模型的三个要素分别是什么?数据结构数据操作数据约束条件8、在学生、课程和选修三个关系模式中,选修关系的学号和课程号都是外码,请从实体完整性和参照完整性(规则)角度分析说明选修关系中这两个外码的取值情况。学生(学号,姓名,性别,专业号,年龄)课程(课程号,课程名,学分)选修(学号,课程号,成绩)实体完整性角度看:学号和课程号都是学生和课程之间的关系,主属性不能取重复的值,也不可以为空值;从参考完整性看:选修关系引用的学号,课程号是存在实体9、试述数据库系统的组成 硬件软件数据库 用户10、什么是基本表?什么是视图?它们之间的区别是什么?基本表:本身独立存在的表,一个表可以带若干索引,索引也存放在存储文件中。视图:一个表或者几个基本表导出的表,是一个虚表。基本表和视图都是表,但基本表是实际存储数据库的表,视图时虚表,它是从基本表或其他视图中导出的表11、数据库的三级模式结构包括哪三级模式和哪两级映像?为什么这两级映像可以保证数据库中的数据有较高的逻辑独立性和物理独立性?三级模式:外部模式概念模式内部模式两级映像:外模式/模式映像模式/内模式映像如果数据库的模式需要改变,只需对外模式/模式映像作相应修改,可使外模式和应用程序尽可能保持不变,保证数据与程序的逻辑独立性。如果数据库为了某种需要改变内模式,可对模式/内模式映像作相应改变,可使模式尽可能保持不变,保证数据与程序的物理独立性12、请叙述1NF、2NF、3NF的定义。如果一个关系模式R,每个关系r的属性值都是不可再分的原子值,则称R为一范式若R属于1NF,且每一个非主属性都完全函数依赖于候选码,则称R为第二范式关系模式R属于2NF,且每个非主属性都不传递依赖于候选码,则称R为第三范式13、什么是数据库的安全性?,什么是数据库的完整性?两者的区别是什么?数据库的安全性:保护数据库以防止不合法的使用所造成的数据泄露、更改或者破坏数据库的完整性:数据库中数据的正确性和相容性,即为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出14、需求分析阶段的设计目标是什么?调查的内容是什么?目标:通过详细调查现实世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能调查内容:组织机构的调查业务流程调查系统的信息要求和处理要求企业的限制和目标15、什么是封锁,基本的封锁类型有几种?试述他们的含义。封锁:事务T在对某个数据对象操作之前,先向系统发出请求,对其加锁基本的封锁类型:X锁S锁X锁也称为排它锁,又称为写锁。若事务T对数据对象A加上X锁,则只允许T读取和修改A,不允许其他任何事务再对A进行加锁和操作,直至T释放A上的锁,从而保证在事务T释放A的硕之前,其他事务不能再读取和修改数据对象AS锁也称为共享锁,又称为读锁。若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的锁16、什么是数据转储、静态转储和动态转储?数据转储:DBA将整个数据库复制到磁带或另一个磁盘上保存起来的过程静态转储:在系统中无运行事务时进行的转储操作动态转储:转储期间允许对数据库进行存取或修改17、RDBMS在实现参照完整性时需要考虑哪些方面?外码的取值规则参考表中增加元组参考表中修改一个元组的外码被参照表中删除一个元组被参照表中修改一个元组的主码18、什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?逻辑独立性表示一旦模式发生变化,无需改变外模式或应用程序能力,物理独立性表示不会因为内模式发生改变而导致概念模式发生改变的能力。因为两层映像保证了数据库具有较高的数据独立性。19、把下列E-R图转换为相应的关系模式,说明:加下划线的属性为该实体的码。人数班号班级名称班级(CLASS)1成绩C-S课程号学时数课程名称nS-Cmn课程(COURSE)学生(STUDENT)年龄性别姓名学号班级:班号班级名称人数学生:学号姓名性别年龄班号课程:课程号课程名称学时数成绩:学号课程号成绩四、综合题1、假设要建立一个企业数据库,该企业有多个下属单位,每一单位有多个职工,一个职工仅隶属于一个单位,且一个职工仅在一个工程中工作,但一个工程中有很多职工参加工作,有多个供应商为各个工程供应不同设备。单位的属性有:单位名、电话。职工的属性有:职工号、姓名、性别。设备的属性有:设备号、设备名、产地。供应商的属性有:姓名、电话。工程的属性有:工程号、地点。请完成如下处理:(1)设计满足上述要求的E-R图。(2)将该E-R图转换为等价的关系模式,并标示出主码单位:单位名电话; 职工:职工号 姓名性别设备:设备号设备名产地; 供应商:姓名电话工程:工程名 地点 供应:姓名工程名设备号数量2、在学校中,一个学生只能属于一个院系,一个院系有多名学生,一个学校有多个社团,每个学生可以加入多个社团,每个社团有多名学生,有一个学生设计了一个关系模式:R(学号,姓名,所属院系编号,院系名称,参加社团的编号,社团名称,参加社团的日期)(1) 请描述该系统的最小函数依赖集。(2) 请指出该学生的关系模式R的码。(3) 请说明该学生的关系模式R属于几范式,并说明理由。(4) 如果该学生的关系模式R不属于BCNF,请对该关系模式R进行模式分解,要求分解后的所有关系模式满足BCNF。3、有一个“学生课程”数据库(stu_c),数据库中包括三个表:(1) “学生”表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,可记为: Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字, 类型char(8)。(2) “课程”表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,可记为: Course(Cno,Cname,Cpno,Ccredit) Cno为关键字,类型char(8)。 (3) “学生选课”表SC由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,可记为: SC(Sno,Cno,Grade) (Sno, Cno) 为关键字。(1)用SQL语句实现SC表的创建,要求定义相应的主键和外键约束Create table SC(Sno char(8),Cno char(8),Grade int,Primary key (Sno,Cno);(2)“学生”表上以学生姓名和年龄建立一个唯一性索引(升序)。create index snamesage on student(sname,sage);(3)在以上三个表中查询Ccredit为5并且Grade大于60的学生的学号、姓名和性别select 学生.学号,学生.姓名,学生.性别 from 学生 join 学生选课 on 学生.学号=学生选课.学号 join 课程on 课程.课程号=学生选课.课程号 where 课程.学分=5 and 学生选课.成绩60(4)统计每个同学所修课程的全部学分(不及格课程不统计)。select 学生.学号,学生.姓名,课程.课程名,课程.学分 from 学生 join 学生选课 on 学生.学号=学生选课.学号 join 课程 on 课程.课程号=学生选课.课程号 where 学生选课.成绩=60(5)修改“李立”同学的数据库成绩为75分。update 学生选课set 成绩=75 where 学号in (select 学号 from 学生where 姓名=李立) and 课程号 in (select 课程号 from 课程 where 课程名=数据库)(6)删除“数据库”课程的选课信息(条件是其先修课不及格)delete from 学生选课where 课程号=any(select 课程号from 课程where 课程名=数据库) and 学号in(select 学号from 学生选课 where 成绩23 and 性别=女(8)“李小波”所选修的全部课程名称;select 课程.课程名from 学生 join 学生选课on 学生.学号=学生选课.学号join 课程on 课程.课程号=学生选课.课程号where 学生.姓名=李小波(9)所有成绩都在80分以上的学生姓名及所在系;select 学号,姓名,所在系 from 学生where 学号 in (select distinct 学生.学号 from 学生 inner join 学生选课 on 学生.学号=学生选课.学号where 学生选课.成绩=80)except(select distinct 学生.学号from 学生inner join 学生选课 on 学生.学号=学生选课.学号where 学生选课.成绩数学(11)“操作系统”课程得最高分的学生姓名、性别、所在系;select 姓名,性别,所在系 from 学生 inner join 学生选课 on 学生.学号=学生选课.学号inner join 课程 on 课程.课程号=学生选课.课程号 where 课程名=操作系统 and 成绩=(select max(成绩) from 学生选课 where 课程号in (select 课程号from 课程 where 课程名=操作系统)(12)至少选修两门以上课程的学生姓名、性别;select 姓名,性别 from 学生 where 学号 in(select 学号 from 学生选课 group by 学号 having count(学号)=2)(13)创建视图,显示每个学生的学号,姓名,选课门数,补考门数select 学号,count(学号) as 选课门数 into temp1 from 学生选课 group by 学号select 学号,count(学号) as 补考门数 into temp2 from 学生选课 where 成绩=n (15)删除修课表drop table 学生选课用SQL语句完成下列操作:(1)用SQL语句实现SC表的创建,要求定义相应的主键和外键约束(2)“学生”表上以学生姓名和年龄建立一个唯一性索引(升序)。(3)在以上三个表中查询Ccredit为5并且Grade大于60的学生的学号、姓名和性别(4)统计每个同学所修课程的全部学分(不及格课程不统计)。(5)修改“李立”同学的数据库成绩为75分。(6)删除“数据库”课程的选课信息(条件是其先修课不及格)(7)年龄大于23岁的女学生的学号和姓名;(8)“李小波”所选修的全部课程名称;(9)所有成绩都在80分以上的学生姓名及所在系;(10)英语成绩比数学成绩好的学生;(11)“操作系统”课程得最高分的学生姓名、性别、所在系;(12)至少选修两门以上课程的学生姓名、性别;(13)创建视图,显示每个学生的学号,姓名,选课门数,补考门数(14)查找选课包括“李丽”所有选课的学生(15)删除修课表4、设有学生课程数据库中包含如下关系:S(SNO,SNAME,SEX,SD,AGE)C(CNO,CNAME,TERM,CREDIT)SC(SNO,CNO,GRADE)其中,S为学生表,它的各属性依次为学号、姓名、性别、系别和年龄;C为课程表,它的各属性依次为课程号、课程名、上课学期和学分;SC为学生选课成绩表,它的各属性依次为学号、课程号和成绩。请用关系代数或SQL语句表达式完成如下问题:1.查询选修课程名为“数学”的学生学号和姓名2.查询选修了“操作系统”或“数据库”课程的学生学号、姓名和年龄3.查询至少选修了课程号为“1”和“3”的学生学号4.查询年龄在1820之间(含18和20)的女生的学号、姓名和成绩5查询选修了“数据库”课程的学生的学号、姓名和成绩6.查询选修全部课程的学生姓名和所在的系7.查询选修课程包括“1024”学生所学的课程的学生学号8.查询不选修“2”号课程的学生姓名和所在的系5、设有如图所示的关系R和S R SABCABCabcbafbafdadcbd请计算(1) RS; (2)R-S; (3)RS; (4)RS ;6、某医院病房的计算机管理系统中需要如下信息。科室:科室名,科室地址,科室电话病房:病房号,床位号,科室名医生:工作证号,姓名,职称,科室名,年龄病人:病历号,姓名,性别,诊治,主管医生,病房号其中,一个科室有多个病房、多位医生,一个病房只属于一个科室,一个医生只属于一个科室,但是可以负责多名病人的诊治,一名病人的主管医生只能有一位。完成.涉及该计算机管理系统的E-R图。7、供应商-零件-工程项目数据库由以下4个关系模式构成。S(SNO,SNAME,STATUS,CITY)P(PNO,PNAME,COLOR,WEIGHT,CITY)J(JNO,JNAME,CITY)SPJ(SNO,PNO,JNO,QTY)供应商S、零件P和工程项目J分别由供应商号(SNO)、零件号(PNO)和工程项目号(JNO)唯一标识。供货关系SPJ是指由某个供应商向某个工程项目供应某些数量的某种零件。试用SQL语言完成以下操作:1. 找出为北京的工程项目所提供的不同的零件号。2. 将未供货的所有工程项目从J中删除。3. 查询提供全部零件的供应商的名称。4. 查询这样的工程项目号:供给该工程项目的零件P1的平均供应量大于供给工程项目J1的任何一种零件的最大供应量。5. 定义一个视图,它由所有具有这种特点的工程项目(工程项目号与所在城市名称)所最成:它们由供应商S1供货且使用零件P1.8、下表给出的关系R为第几范式?为什么?是否存在操作异常?若存在,则将其分解为高一级范式。分解完成的高一级范式中是否可以避免分解前关系中存在的操作异常?R工程号材料号数量开工日期完工日期价格P1I1498059902250P1I2698059902300P1I31598059902180P2I1698119912250P2I48981199123509、设某商业集团关于商店销售商品的数据库中有三个基本表:商店SHOP(S#,SNAME,AREA,MGR_NAME)其属性是商店编号,商店名称,区域名,经理姓名。销售SALE(S#,G#, QUANTITY)其属性是商店编号,商品编号,销售数量。商品GOODS(G#,GNAME,PRICE)其属性是商品编号,商品名称,单价。1)试写出下列查询的关系代数表达式:检索销售“冰箱”的商店的编号和商店名称。2)试写出上面1题的SELECT语句表达形式。3)试写出下列操作的SQL语句:从SALE表中,把“开开商店”中销售单价高于1000元的商品的销售元组全部删除。10、试写出下列操作的SQL语句:统计区域名为“EAST”的所有商店销售的每一种商品的总数量和总价值。要求显示(G#,GNAME,SUM_QUANTITY,SU)1.设有学生选取修课程数据库:S(S#, SNAME, AGE, SEX, DEPARTMENT, ADDRESS, BIRTHPLACE)SC(S#, C#, GRADE)C(C#, CNAME, TEACHER)用SQL语句完成下列操作:1) 李老师所教的课程号、课程名称;SelectC#,CNAMEFromCWhereTEACHER=李;2) 年龄大于23岁的女学生的学号和姓名SelectS#,SNAMEFromSWhereAGE23 AND SEX=女;3) “李小波”所选修的全部课程名称;SelectCNAMEFromS,SCWhereS.S#=SC.S# AND SNAME=李晓波;4) 所有成绩都在80分以上的学生姓名及所在系;SelectSNAME,DEPARTMENTFromS,SCWhereS.S#=SC.S# AND SC.S# not in(selectS#FromSCWhereGRADE80);5) 没有选修“操作系统”课的学生的姓名;SelectSNAMEFromSWhereS# not in (SelectS#FromSC,Cwhere SC.C#=C.C# AND CNAME=操作系统);6) 与“李小波”同乡的男生姓名及所在系;SelectSNAME,DEPARTMENTFromSWhereAGE=男AND BIRTHPLACE=(selectBIRTHPLACEFromSWhereSNMAE=李晓波);7) 英语成绩比数学成绩好的学生;8) 选修同一门课程时,女生比男生成绩好的学生名单;9) 至少选修两门以上课程的学生姓名、性别;10) 选修了李老师所讲课程的学生人数;11) 没有选修李老师所讲课程的学生;12) “操作系统”课程得最高分的学生姓名、性别、所在系;11.假设“仓库管理”关系模型有下列五个关系模式零件part(pno,pname,color,weight)项目project(jno,jname,date)供应商supplier(sno,sname,saddr)供应 p_p(jno,pno,total)采购 p_s(pno,sno,quantity)1) 使用SQL DDL 语句定义上述五个基本表,并说明主键和外键。2) 试将project,p_p,part三个基本表的自然联接定义为一个试图VIEW1,将part,p_s,supplier三个基本表的自

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论