1、数据库系统原理习题1142 颜色不关我的事!数据库系统原理习题(1) 1. 设下列操作在近似匹配方式下,写出下列命令执行后的结果: 1) ? 8 = 5+3 , 8=5+3 , 08/03/02 2) ? “ABC ” “AB”, “ABC”=“AB”, “ABC”“AB” 3) ? NOT 5=3 AND “ABC”=“AB” OR .T.=.F. 4) ? 8%7,-1.3%5, 9%-12 , -7.25%-8.25, 7.25%-8.25 5) ? “ab” $ “123ab” , 123 +20 ,123 -20 数据库系统原理习题(2)书面作业可任选其中5题1、 什么是数据库的工作
2、区?工作区-是用来存放数据库中的数据表或自由表的一片内存区域。2、 什么是表的别名?别名-在多工作区情况下,为了操作上的方便,在打开数据表时,给数据表起的一个暂用名字。关闭该数据表后,其别名自动失效。3、 为什么要使用表的别名?在多工作区情况下,为了操作上的方便。4、 用哪两种方法可以使数据库的第8个工作区成为当前工作区?A select 8 b select h5、 什么情况下要给表的字段冠于前缀表的别名?可作为工作区的代码使用;表示所引用的字段是其它(非当前工作区)中的字段名表别名可用于选择工作区6、 给表的别名有哪几种表达方法?请举例说明。 1 use 表名 alias 别名 2 sel
3、ect 别名 Use 表名7、 工作区的数字标号能作为字段的前缀(别名)吗?工作区的数字代码通常在函数或命令中使用,但不能作为字段名的前缀。数字不能作为字段名前缀,不能写成5.姓名8、 命令“SELE 0”的作用是什么?select 0为选择最小可用工作区9、 VFP 6.0中,数据库工作区的最小编号是什么?最大标号是什么?可以使用的工作区多少受到计算机系统的哪个条件的限制?数据库系统原理习题(3)书面作业可任选其中6题10、 什么是表的“投影”操作?请举例说明。Use scoreList all for 学号=”980001”11、 什么是表的“选择”操作?请举例说明。Use scoreLi
4、st all for 学号=”980001” FIELDS 课程号,成绩12、 什么是记录指针的绝对移动?使用哪几种方法移动?请举例说明。13、 什么是记录指针的相对移动?使用什么方法移动?请举例说明。14、 记录的操作范围有哪四种?ALL NEXT RECORD REST15、 什么是记录的逻辑删除?什么是记录的物理删除?16、 For和while子句都可以表达选择条件,二者的主要区别是什么?17、 命令“DELE”、 “PACK”、“ ZAP”的主要区别是什么?18、 在没有任何命令“子句”的情况下,“disp”、“list”命令的功能是什么?在不加任何选项的情况下,list为显示所有记录
5、,而display为显示当前记录。19、 给字段变量赋值,除了手工录入外,就是要使用哪条命令?请举例说明。20、 命令“DISP”、 “ LIST”、 “ REPL”、 “ RECA”在没有范围和条件子句情况下,它们缺省的(默认的)范围是什么?Disp 当前记录 list all repl 当前记录 reca 当前记录21、 什么情况下bof( )的函数值为真(.T.)?22、 什么情况下eof( )的函数值为真(.T.)?23、 为什么要多用“索引”而少用“排序”操作?数据库系统原理习题(4)书面作业()一、名词解释1、主索引 2、候选索引 3、唯一索引 4、普通索引5、单一索引文件6、结构
6、复合压缩索引文件7、非结构复合压缩索引文件8、主控索引 二、操作及问答题1、升(将)序排序的操作。2、先按某“键值1”升(将)序排序,在“键值1”相同时再按先按某“键值2”升(将)序排序。3、删除排序文件。4、举例说明利用INDEX命令建立三种不同索引文件的方法。5、利用表设计器建立结构复合压缩索引文件的方法。6、举例说明三种设置主控索引的发方法。7、取消主控索引的方法。 8、重新索引的操作。9、列举出到目前为止已经学过的查询操作命令。 10、LOCA命令和SEEK命令都用于查询操作,请举例说明二者的主要区别。11、字段和记录的过滤操作的目的是什么?请各举一例分别说明其操作方法。12、统计操作
7、:求记录总数,求平均数,求数值型字段数据的总和。13、统计操作“分类汇总”的含义是什么?举例说明如何分类?如何汇总? 14、在分类汇总操作的结果(表文件)中,其中的“非数值型”字段值是如何规定的?15、若要将两个表“按同名字段的值相等”的条件连接起来,在操作时应注意哪些事项。数据库系统原理习题(5)1、 VFP 6.0中可执行程序的扩展名是_或_。2、 在VFP 6.0中程序中变量作用范围可分为_变量和_变量两类。其中前者可以在_范围内使用,后者在_后被释放。3、 在VFP 6.0中程序中,参数的传递方法有_等_种。4、 子程序和自定义函数的区别是什么?请分别举一例说明。5、 分别用“计数型循
8、环FORENDFOR”和“当型循环DO WHILEENDDO”编一个程序计算S=-1+2-3+4-+100,并输出计算结果。6、 编一个自定义函数计算N!,用此函数计算并输出(10!5!)/6!的结果。数据库系统原理习题(6)1、 等值连接和自然连接的区别是什么?2、 除了传统集合运算“并、交、差、笛卡尔积”之外,为了满足关系数据库中对表的运算需要,在关系代数中又扩充了_、_、_等运算。3、 设关系R和S如下所示,计算:SR (1) RS,ABC367257723443ABC345723(2) R - S,(3) RS,(4) RS,(5) 3,2(S),(6) B5(R), (7) RS,
9、223 AND SEX =男;3、检索至少选修LIU老师所授课程中一门课程的女学生的姓名。(提示:要求输出不重复的元组,此时,需要在SELECT子句中使用限定性的选项DISTINCT )SELECT DISTINCT SNAMEFROM S, SC, CWHERE .TEACHER =LIU AND C.C#=SC.C# AND SC.S#=S.S# AND SEX=女;4、检索WANG同学不学的课程的课程号。SELECT C#FROM SCWHERE S# NOT IN( SELECT S# FROM S WHERE SNAME=WANG);提示:IN ,NOT IN是集合成员资格运算.注意
10、子查询SELECT的圆括号不的省略。5、检索至少选修两门课程的学生学号。SELECT DISTINCT S#FROM SC AS X WHERE 2=(SELECT COUNT (*)FROM SC AS YWHERE X.S#=Y.S#GROUP BY X.S#)说明:本题中用到了子查询(圆括号内的查询)、分组(GROUP BY )、去掉查询结果中重复元组(DISTINCT)以及计数(COUNT (*)等多中技术。至少选修两门的表达方法是“2=ANY(SELECT C.分数; FROM 成绩 AS C WHERE C.分数80)4、 解: SELECT A.姓名,A.性别,A.年龄,B.课程
11、名,C.分数; FROM 学生AS A,课程AS B,成绩 AS C; WHERE (A.学号=C.学号) AND (B.课程号=C.课程号); AND C.分数=ANY(SELECT MAX(C.分数) FROM 成绩 AS C )补充题二:设教学数据库有三个关系:S(S#,SNAME,AGE,SEX)SC(S#,C#,GRADE)C(C#,CNAME,TEACHER)请用SQL语句表示下列查询操作:1、检索年龄大于23岁的女生(SEX值为“女”)学号和姓名。2、检索LIU老师所授课程的学生学号及姓名。3、检索选修课程为C1和C4的学生学号。4、检索学习全部课程的学生姓名。1、解:SELEC
12、T S# ,SNAME;FROM S;WHERE (AGE23) AND (SEX=“女”)2、解:SELECT S# ,SNAMEFROM SWHERE EXISTS (SELECT * FROM SC WHERE EXISTS (SELECT * WHERE S.S#=SC.S# AND SC.C#=C.C# AND TEACHER=LIU) 3、解:SELECT SNAMEFROM SWHERE (C#=C1) AND (C#=C4)4、解:SELECT SNAMEFROM SWHERE NOT EXISTS (SELECT * FROM CWHERE NOT EXISTS (SELEC
13、T * FROM SC WHERE SC.S#=S.S# ) AND (C.C#=SC.C#)补充题三3.1 设有两个基本表R(A,B,C)和S(D,E,F),试用SQL查询语句表达下列关系代数表达式:(1)A(R)(2)B=17(R)(3)RS(4)A,F(C=D(RS)(1) 解: SELECT A FROM R;(2) 解: SELECT A,B,C FROM R WHERE B=17(3) 解: SELECT A,B,C,D,E,F FROM R,S;(4) 解: SELECT A,F FROM R,SWHERE C=D;3.2 设有两个基本表R(A,B,C)和S(A,B,C),试用S
14、QL查询语句表达下列关系代数表达式:(1)RS(2)RS(3)R-S(4)A,B(R)A,B(S)(1)解: (SELECT * FROM R) UNION(SELECT * FROM S);(2)解: (SELECT * FROM R) INTERSECT(SELECT * FROM S);(3)解: (SELECT * FROM R) EXCEPT(SELECT * FROM S);(4)解: SELECT R.A,R.B,S.CFROM R,S WHERE R.B=S.B;3.3 试叙述SQL语言的关系代数特点和元组演算特点。答:SQL的关系代数特点如下:有关系代数的并、交、差、自然连接
15、等运算符;FROM子句体现了笛卡尔积操作,WHERE子句体现了选择操作,SELECT子句体现了投影操作。SQL的元组演算特点如下:FROM子句中的基本表名应视为“元组变量”,属性名应视为“元组分量”;有存在量词EXISTS。3.4 试用SQL查询语句表达下列3个基本表S、SC、C的查询。S(S#,SNAME,AGE,SEX)SC(S#,C#,GRADE)C(C#,CNAME,TEACHER)统计有学生选修的课程门数。解:SELECT COUNT(DISTINCT C#) FROM SC WHERE S# IS NOT NULL;问1:为什么要使用WHERE子句?(在聚合函数中遇到空值时,除了C
16、OUNT(*)外,都跳过空值去处理非空值)问2:为什么要用DISTINCT? (去掉重复元组)求选修C4课程的学生的平均年龄解:SELECT AVG(AGE) FROM S,SC WHERE S.S# =SC.S# AND C# = C4;求LIU老师所授课程的每门课程的学生的平均成绩。解:SELECT C.C#,AVG(GRADE) FROM SC,C WHERE SC.C# =C.C# AND TERCHER=LIU GROUP BY C.C#; 统计每门课程的学生选修人数(超过10人的课程才统计)。要求输出课程号和选修人数,查询结果按人数的降序排列,若人数相同,按课程号的升序排列。解:S
17、ELECT C#,COUNT(S#)也可以写成:C# ASC表示升序 FROM SC GROUP BY C# HAVING COUNT(*)10 ORDER BY 2 DESC,1;数据库系统原理习题(10)教材第2章部分内容一、 名词解释:(教材p.79)数据 信息 数据管理 数据处理 数据库 数据库管理系统 数据库系统 数据模型实体 实体集 关键字 模式 外模式 内模式 数据独立性 逻辑数据独立性 物理数据独立性二、 简答题:(教材p.79) 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.12 数据库系统原理习题(11)教材第3章部分内容一、 简答题:(教材p.109) 3.
18、1 3.3 3.6 3.8数据库系统原理习题(12)教材第4章部分内容一、名词解释:(教材p.144) 4.1 1) 、 4.1 2) 、1NF、 2NF、 3NF 二、设计题:(教材p.145) 4.7 数据库系统原理习题(13)教材第5章部分内容一、简答题:(教材p.175) 5.1 5.6 、5.85.10、 5.16 数据库系统原理习题(14)部分复习参考题数据库原理及其应用教程学习指导、例题分析、习题解答与标准试题库P.48 26) 2.5.3 1)、9)、10)P.52 6. 7.P.53 3.2.2 1. 2.P.71 P.73 1)17)、 24)、27)P.74 12)P.75 14) 16)P.76 3) P.106 3)P.107 16) 18)P.108 19) 、20)、24)、25)、27)P.109 1) 、7)、11)、12)、13)、14)P.110 17) 、23)、24) P.110 4.5.3 5)、6)、14)P.111 2) 、3) P.122 (3)P.135 5.10 P.138 16) 17) 19)P.139 7) 10) 18) 19) 5.5.3 1)P.161 3) 6.3P.161 6.11P.167 11) 12)P.168 14) 15) 19) 20) 21) P.169 5) 15) 17) 18) 21)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1