收藏 分销(赏)

数据库习题.doc

上传人:xrp****65 文档编号:7231200 上传时间:2024-12-28 格式:DOC 页数:9 大小:85.50KB 下载积分:10 金币
下载 相关 举报
数据库习题.doc_第1页
第1页 / 共9页
数据库习题.doc_第2页
第2页 / 共9页


点击查看更多>>
资源描述
习 题 二(Page 54) /*14. 针对以上表2-5中的四个表,用 SQL 语言完成以下各项操作: ① 给学生表增加一属性Nation(民族),数据类型为Varchar(20); */ ALTER TABLE Student ADD Nation VARCHAR (20); /*② 删除学生表中新增的属性Nation;*/ ALTER TABLE Student DROP COLUMN Nation; /*③ 向成绩表中插入记录("2001110","3",80);*/ INSERT INTO Grade VALUES ('2001110','3',80); /*④ 修改学号为"2001110"的学生的成绩为70分;*/ UPDATE Grade SET Gmark=70 WHERE Sno='2001110'; /*⑤ 删除学号为"2001110"的学生的成绩记录;*/ DELETE FROM Grade WHERE Sno='2001110'; /*⑥ 为学生表创建一个名为IX_Class的索引,以班级号的升序排序;*/ CREATE INDEX IX_Class ON Student(Clno) ; /*⑦ 删除IX_Class索引。*/ DROP INDEX Student.IX_Class; /*15. 针对以上表2-5中的四个表,用 SQL 语言完成以下各项查询: ① 找出所有被学生选修了的课程号;*/ select DISTINCT Cno from Grade; /*② 找出01311班女学生的个人信息;*/ select * from Student where Clno='01311' and Ssex='女'; /*③ 找出01311班、01312班的学生姓名、性别、出生年份;*/ select Sname,Ssex,2006-Sage 出生年份 from Student where Clno in ('01311', '01312'); /*④ 找出所有姓李的学生的个人信息;*/ select * from Student where Sname like ('李%'); /*⑤ 找出学生李勇所在班级的学生人数;*/ select Number from Class where Clno= (select Clno from Student where Sname='李勇'); /*⑥ 找出课程名为操作系统的平均成绩、最高分、最低分; */ select Avg(Gmark), Max (Gmark), Min (Gmark) from Grade where Cno in (select Cno from Course where Cname='操作系统'); /*⑦ 找出选修了课程的学生人数;*/ select COUNT( DISTINCT Sno) from Grade; ⑧ 找出选修了课程操作系统的人数 Select count( distinct sno) from grade Where cno in (select cno from course where cname =’操作系统’) ⑨ 找出2000级计算机软件班的成绩为空的学生姓名 Select sname from student where cno in (select clno from class where speciality=’计算机软件’ and inyear=’2000’) And sno in (select sno from grade where gmark is null) /*16. 针对以上表2-5中的四个表, 用SELECT的嵌套查询完成以下各项查询: ① 找出与李勇在同一个班级的学生信息;*/ select * from Student where Clno in (select Clno from Student where Sname='李勇'); ② 找出所有与学生李勇有相同选修课程的学生信息; select * from Student where Sno in (select Sno from Grade where Cno in (select Cno from Grade where Sno in (select Sno from Student where Sname='李勇'))); ③ 找出年龄介于学生李勇的年龄和25岁之间的学生信息; select * from Student where Sage BETWEEN (select Sage from Student where Sname='李勇') and 25; ④ 找出选修了课程操作系统的学生学号和姓名; select Sno, Sname from Student where Sno in (select Sno from Grade where Cno in (select Cno from Course where Cname='操作系统')); ⑤ 找出所有没有选修1号课程的学生姓名 Select sname from student where sno not in (select sno from grade where cno=’1’) ⑥ 找出选修了全部课程的学生姓名 Select sname from student where sno in (select sno from grade where cno > = all (select cno from course )) SELECT sname FROM student WHERE NOT EXISTS ( SELECT * FROM course WHERE NOT EXISTS ( SELECT * FROM Grade WHERE Sno=Student.Sno AND Cno=Course.Cno ) ); 对Student中的每个元组依次取Course中的每个元组, 每次按Student的Sno和Course的Cno 在grade中找相应元组; 若每次的结果都不为空, 则Student中对应的SNAME 为所选. 逐行扫描Student表中的每条记录,对每一个Sno,都顺序扫描Couse表, 读取每一个Cno;对于每一个Sno的(Sno,Cno),都在grade表中查找有没有与之对应的行。 如果某一个Sno,对于Couse表中的每一个Cno,都在grade表中都有一个相应的行与之对应,则这个Sno所对应的SNAME被显示。 17. 针对以上表2-5中的四个表,用 SQL 语言完成以下各项查询: ① 查询选修了3号课程的学生学号及其成绩,并按成绩的降序排列; select Sno,Gmark from Grade where Cno='3' ORDER BY Gmark DESC; ② 查询全体学生信息,要求查询结果按班级号升序排列,同一班级学生按年龄降序排列; select * from Student ORDER BY Clno,Sage DESC; ③ 求每个课程号及相应的选课人数; select Cno,COUNT(Sno) 选课人数 from Grade GROUP BY Cno; ④ 查询选修了3门以上课程的学生学号。 select Sno from Grade GROUP BY Sno HAVING COUNT(*)>3; (cno)>3 18. 针对以上表2-5中的四个表, 用 SQL 语言完成以下各项操作: ① 对每个班, 求学生的平均年龄, 并把结果存入数据库; ALTER TABLE Class ADD Avg_age int; UPDATE Class SET Avg_age= (select AVG(Sage) from Student GROUP BY Clno HAVING Student.Clno=Class.Clno); ② 将01311班的全体学生的成绩置零; UPDATE Grade SET Gmark=0 where Sno in (select Sno from Student where Clno='01311'); /*加不加引号都可执行。*/ ③ 删除2001级计算机软件的全体学生的选课记录; DELETE from Grade where Sno in (select Sno from Student where Clno in (select Clno from Class where (Inyear='2001' and Speciality='计算机软件'))); ④ 学生李勇退学,从数据库中删除有关他的记录 Delete from grade where sno= (select sno from student where sname=’李勇’) Delete from student where sname =’李勇’ 20. 成绩管理数据库的表结构说明中加入了完整性约束说明, 如表2-6所示, 请用 SQL 语句完成图中约束的说明。 1)CREATE TABLE Student (Sno CHAR (7) NOT NULL, Sname VARCHAR (20) NOT NULL, Ssex CHAR (2) NOT NULL CHECK (Ssex IN ('男', '女')) DEFAUlT ('男'), Sage SmallINT CHECK (Sage>14 AND Sage<65), Clno CHAR (5) NOT NULL, PRIMARY KEY (Sno), FOREIGN KEY (Clno) REFERENCES Class (Clno)) ; 2)CREATE TABLE Course (Cno CHAR (1) NOT NULL PRIMARY KEY, Cname VARCHAR (20) NOT NULL, Credit SmallINT CHECK (Credit in(1,2,3,4,5,6))); 3)CREATE TABLE Class (Clno CHAR (5) NOT NULL PRIMARY KEY, Speciality VARCHAR (20) NOT NULL, Inyear CHAR (4) NOT NULL, Number INTeger CHECK (Number >1 AND Number <100), Monitor CHAR (7) REFERENCES Student (Sno)); 4)CREATE TABLE Grade (Sno CHAR (7) NOT NULL, Cno CHAR (1) NOT NULL, Gmark Numeric CHECK (Gmark >=0 AND Gmark <=100), PRIMARY KEY (Sno,Cno), FOREIGN KEY (Sno) REFERENCES Student (Sno), FOREIGN KEY (Cno) REFERENCES Course (Cno)); 习题三(page 76) 5. 1)找出所有被学生选修了的课程号 ∏cno(grade) 2)找出01311班女生的个人信息 σclno=’01311’ ∧ ssex=’女’ (student) 3)找出01311班、01312班的学生的姓名、性别、出生年份 ∏sname,ssex,year(getdate())-sage(σclno=’01311’ ∨ clno=’01312’(student) 4)找出年龄介于14与20岁之间的学生的信息 σsage>14 ∧ sage <20 (student) 5)找出选修了课程操作系统的学生学号和姓名 ∏sno,sname (σ cname=‘操作系统’(student Grade course ) 6)找出所有没有选修1号课程的学生姓名 ∏ sname (student) - ∏sname (cno=’1’(student Grade)) 7) 找出选修了全部课程的学生姓名 ∏ sname (∏sno,cno(Grade) ÷∏cno(course)) student ) 1.要保证数据库的数据独立性,需要修改的是( A ) A.三层模式之间的两种映射 B.模式与内模式 C.模式与外模式 D.三层模式 2.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( C ) A.多对多     B.一对一     C.多对一     D.一对多 3.在视图上不能完成的操作是( C ) A.更新视图 B.查询 C.在视图上定义新的基本表 D.在视图上定义新视图 4.关系数据模型的三个组成部分中,不包括( C ) A.完整性规则        B.数据结构 C.恢复              D.数据操作 5.在关系模式中,视图是三级模式结构中的 ( D ) A. 内模式    B. 模式    C. 存储模式   D. 外模式 6.在数据库的三级模式中,内模式有 ( A ) A. 1 B. 2 C. 3 D. 多个 7.三个模式之间存在下列映射关系,将正确的填入括号中(   B  ) A.外模式/内模式             B.外模式/模式 C.模式/模式                 D.内模式/外模式 8.数据的逻辑独立性是指(  C   ) A.存储结构与物理结构的逻辑独立性 B.数据与存储结构的逻辑独立性 C.数据与程序的逻辑独立性 D.数据元素之间的逻辑独立性 9.以下叙述中,属于结构冲突的是(   B  ) A.同一对象在相同应用中具有不同的抽象 B.同一对象在不同应用中具有不同的抽象 C.同一实体在不同分E-R图中所包含的属性个数和属性排列次序完全相同 D.以上叙述均不属于结构冲突 10、在下列关于关系的陈述中,错误的是(B ) A 表中任意两行的值不能相同 B 表中任意两列的值不能相同 C 行在表中的顺序无关紧要 D 列在表中的顺序无关紧要 11、关系数据库中,实现实体之间的联系是通过表与表之间的(D ) A 公共索引 B 公共存储 C 公共元组 D 公共属性 12、有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于( C ) A 实体完整性约束 B 参照完整性约束 C 用户自定义完整性约束 D 关键字完整性约束 13、下面有关主键的叙述正确的是( B ) A 不同的记录可以具有重复的主键值或空值 B 一个表中的主键可以是一个或多个字段 C 在一个表中主键只可以是一个字段 D 表中的主键的数据类型必须定义为自动编号或文本 14、定义外键实现的是哪一(些)类完整性? ( B ) A 实体完整性 B 参照完整性 C 用户定义的完整性 D 实体完整性、参照完整性和用户定义的完整性 15、在下列关系代数的操作中,哪一个不属于专门的关系运算?( C) A 自然连接 B 投影 C 广义笛卡尔积 D 连接 16、从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是( C )  A. M端实体的关键字  B. N端实体的关键字  C. M端实体关键字与N端实体关键字组合  D. 重新选取其他属性 17、在SQL语言中,( )子句能够实现关系参照性规则。 ( D ) A.    PRIMARY KEY B.    NOT NULL C.    FOREIGN KEY D.    FOREIGN KEY...REFERENCES... 18、在数据库系统的三级模式结构中,用来描述数据的全局逻辑结构的是(3) (1)子模式 (2)用户模式 (3)模式 (4)存储模式 19、下列哪种运算不属于关系代数的基本运算(1) (1)连接 (2)笛卡尔积 (3) 相减 (4) 投影 20不能激活触发器执行的操作是D A.DELETE           B.UPDATE C. INSERT           D.SELECT 21关于对SQL对象的操作权限的描述正确的是____。A A. 权限的种类分为INSERT、DELETE和UPDATE三种 B. 权限只能用于实表不能应用于视图 C. 使用REVOKE语句获得权限 D. 使用COMMIT语句赋予权限 22关于事务的故障与恢复,下列描述正确的是____。D A. 事务日志是用来记录事务执行的频度 B. 采用增量备份,数据的恢复可以不使用事务日志文件 C. 系统故障的恢复只需进行重做(Redo)操作 D. 对日志文件设立检查点目的是为了提高故障恢复的效率 23以下关于E-R图的叙述正确的是____。C A. E-R图建立在关系数据库的假设上 B. E-R图使用过程和数据的关系清晰,实体间的关系可导出应用过程的表示。 C. E-R图可将现实世界(应用)中的信息抽象地表示为实体以及实体间的联系 D. E-R图能表示数据生命周期。 24事务的ACID性质中,关于原子性(atomicity)的描述正确的是____。C A. 指数据库的内容不出现矛盾的状态。 B. 若事力正常结束,即使发生故障,列新结果也不会从数据库中消失 C. 事务中的所有操作要么都执行,要么都不执行 D. 若多个事务同时进行,与顺序实现的处理结果是一致的。 25设关系模式R(A,B,C),下列结论错误的是____。C A.若A→B, B→C,则A→C B.若A→B, A→C,则A→BC C.若BC→A,则B→A,C→A D.若B→A ,C→A,则BC→A 26允许取空值但不允许出现重复值的约束是______。B A.NULL            B.UNIQUE C.PRIMARY KEY         D.FOREIGN KEY 27存在非主属性对码的部分依赖的关系模式是_______。A A.INF            B.2NF C.3NF             D.BCNF 28在某学校的综合管理系统设计阶段,教师实体在学籍管理子系统中被称为“教师”,而在人事管理子系统中被称为“职工”,这类冲突被称之为______。B A.语义冲突          B.命名冲突 C.属性冲突          D.结构冲突 29______能保证不产生死锁。B A.两段锁协议           B.一次封锁法 30_____,数据库处于一致性状态。A A.采用静态副本恢复后       B.事务执行过程中 C.突然断电后           D.缓冲区数据写入数据库后 31一个事务执行过程中,其正在访问的数据被其他事务所修改,导致处理结果不正确,这是由于违背了事务的_____而引起的。C A.原子性            B.一致性 C.隔离性            D.持久性 32在数据库中,存储冗余数据是( C ) A.不应该的 B. 应该且合理的 C. 合理的但不能过度冗余 D. 视情况而定 33在数据库系统中,DBS与DB的关系是( A ) A. DBS包括DB B. DB包括DBS C. 不一定的 D. 同级关系( ) 34关系模式R,S具有共同的属性X,且X是R的主码,则X称为S的( B ) A. 主码 B. 外码 C. 关键字 D. 相对主码 35关系R的实体完整性控制是指 ( C ) A. 主键非空 B. 主键唯一 C. 主键非空且唯一 D. 主键非空或唯一 36在SQL的查询中,在“Where字段=(子查询)”中子查询(A )返回多个记录。 A. 不能 B. 能 C. 不一定 D. 能,但有限制 37.数据库的三级模式之间存在着两级映象,使数据库系统具有较高的数据(  B   ) A.相容性  B.独立性 C.共享性  D.一致性 38.设有关系模式R(A,B,C),F={A→B,C→B}。相对于F,R的候选键为(  A     ) A.AC  B.ABC C.AB  D.BC 39.设关系模式R(U),X、Y、Z是U的子集,且Z=U-X-Y.下面关于多值依赖的叙述中,不正确的是(    D   ) A.若X→→Y,则X→→Z  B.若X→→Y,且Y′是 Y的子集,则X→→Y′ C.若X→Y,则X→→Y  D.若z=Φ,则X→→Y 40.以下关于事务调度和封锁的描述中,正确的是(    A   ) A.遵守两段封锁协议的并发事务一定是可串行化的 B.可串行化的并发事务一定遵守两段封锁协议 C.遵守两段封锁协议的并发事务不一定是可串行化的 D.遵守两段封锁协议的并发事务一定不会产生死锁 41. 表示数据库的概念模型一般使用(  C   )。 A.用户活动图      B.数据流图 C.E—R图         D.流程图 42.在事务依赖图中,若各个事务之间的依赖关系构成循环,则就会出现(   A    ) A.死锁  B.共享锁 C.活锁  D.排它锁 43.将ER模型转换成关系模型,属于数据库的(    C   ) A.需求分析  B.概念设计 C.逻辑设计  D.物理设计 44.SQL语言中,用GRANT/REVOKE语句实现数据库的(   D    ) A.并发控制  B.完整性控制 C.一致性控制  D.安全性控制 45.三个模式之间存在下列映射关系,将正确的填入括号中(  B   )   A.外模式/内模式             B.外模式/模式   C.模式/模式                 D.内模式/外模式 46.数据的逻辑独立性是指(   C  )   A.存储结构与物理结构的逻辑独立性   B.数据与存储结构的逻辑独立性   C.数据与程序的逻辑独立性   D.数据元素之间的逻辑独立性 47、SQL语言中,删除一个表的命令是(B ) A DELETE B DROP C CLEAR D REMORE 48、在下列关于关系的陈述中,错误的是(B ) A 表中任意两行的值不能相同 B 表中任意两列的值不能相同 C 行在表中的顺序无关紧要  D 列在表中的顺序无关紧要 49、有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于( C ) A 实体完整性约束 B 参照完整性约束 C 用户自定义完整性约束 D 关键字完整性约束 50、设关系R和S的属性个数为r和s ,则(R*S)操作结果的属性个数为     ( A ) A r+s B r-s C r*s D max(r+s) 51、在SQL语言中,条件“RETWEEN 20 AND 30”表示年龄在20到30之间,且(A ) A 包括20岁和30岁 B 不包括20岁和30岁 C 包括20岁不包括30岁 D 不包括20岁包括30岁 52、下面有关主键的叙述正确的是( B ) A 不同的记录可以具有重复的主键值或空值 B 一个表中的主键可以是一个或多个字段 C 在一个表中主键只可以是一个字段 D 表中的主键的数据类型必须定义为自动编号或文本 53、有关系R和S,R∩S的运算等价于( B ) A.    S-(R-S) B. R-(R-S) C. (R-S)∪S D. R∪(R-S) 54、取出关系中的某些列,并消去重复的元组的关系运算称为( B ) A.取列运算 B.投影运算 C.连接运算 D.选择运算 55、根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:( B ) A、只存在一对多的实体关系,以图形方式来表示。 B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。 C、能体现一对多、多对多的关系,但不能体现一对一的关系。 D、关系模型数据库是数据库发展的最初阶段 56、数据库三级模式体系结构的划分,有利于保持数据库的 ( A ) A 数据独立性 B 数据安全性 C 结构规范化 D 操作可行性 57、假定学生关系是S(SNO,SNAME,SEX,AGE) 课程关系是C(CNO,CNAME,CREDIT) 学生选课关系是SC(SNO,CNO,GRADE) 要查找选修“数据库”课程的女学生的姓名,将涉及到的关系 ( D ) A S B C,SC C S,SC D S,C,SC 58、定义外键实现的是哪一(些)类完整性? ( B ) A 实体完整性 B 参照完整性 C 用户定义的完整性 D 实体完整性、参照完整性和用户定义的完整性 59、在下列关系代数的操作中,哪一个不属于专门的关系运算?( C) A 自然连接 B 投影 C 广义笛卡尔积 D 连接 60、下面所列条目中,哪一条不是标准的SQL语句? ( B ) A ALTER TABLE B ALTER VIEW C CREATE TABLE D CREATE VIEW 61、在SQL语言中,( )子句能够实现关系参照性规则。 ( D ) A.    PRIMARY KEY B.    NOT NULL C.    FOREIGN KEY D.    FOREIGN KEY...REFERENCES... 62、从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是( C )  A.    M端实体的关键字  B.    N端实体的关键字  C.    M端实体关键字与N端实体关键字组合  D. 重新选取其他属性 
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服