![数据库错题](https://cdn.jsdelivr.net/gh/Recopec/Recopec.github.io@latest/images/bg.jpg)
数据库错题
数据库错题
下面列出的数据管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是( )。
I.人工管理阶段 II.文件系统阶段 III.数据库阶段
- A. I 和 II
- B. 只有 II
- C. II 和 III
- D. 只有 I
关于数据库系统语言,下列说法正确的是______。
- A.数据库系统语言包括了DDL和DML
- B.数据库系统语言包括了DDL、DML和DCL
- C.数据库系统语言包括了DDL、DML和C++/Java
- D.数据库系统语言包括了DDL、DML和程序设计语言
下列说法不正确的是_______________。
- A.模式是对数据的抽象,数据的结构性描述称为模式
- B.数据模型是对模式的抽象,模式的结构性描述称为数据模型
- C.一个数据库是由一系列模式及其数据构成的
- D.模式是对数据模型的抽象,数据模型的结构性描述称为模式
第一代数据库系统是指_______________。
- A.文件系统
- B.基于XML模型的数据库系统
- C.基于关系模型的数据库系统
- D.基于网状模型或层次模型的数据库系统
tip:是数据库系统,不是数据管理(记录)阶段
第二代数据库系统是指_______________。
- A.基于文件的数据库系统;
- B.基于XML模型的数据库系统
- C.基于网状模型或层次模型的数据库系统
- D.基于关系模型的数据库系统
现有如下关系:患者(患者编号,患者姓名,性别,出生日期),医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期)。其中,“医疗”关系中的外键是_______
- A.患者编号
- B.患者姓名
- C.患者编号和患者姓名
- D.医生编号
关于关系模型完整性的说法,不正确的是___
- A.外键如果取空值,则违反了参照完整性
- B.数据库中有了空值会影响许多方面,如影响聚集函数运算的正确性等
- C.用户自定义完整性是指用户针对具体的数据库应用所定义的完整性约束条件
- D.实体完整性和参照完整性一般由DBMS系统自动支持
tips:外键可以为空,非空则要有对应的值
关于关系模式与关系,说法不正确的是_______
- A.关系模式是稳定的;同一关系模式下,只有一种关系
- B.同一关系模式下,可有很多的关系
- C.关系模式是关系的结构, 关系是关系模式在某一时刻的数据
- D.关系模式是稳定的;而关系是某一时刻的值,是随时间可能变化的
根据上述关系,求表R⋈W的结果_______
![img](/2022/04/16/%E5%AD%A6%E4%B9%A0/%E8%AE%B0%E5%BD%95/%E6%95%B0%E6%8D%AE%E5%BA%93%E9%94%99%E9%A2%98/80A7EDB561D87941BE087E2B9DD27D33.png)
- A.
- B.
- C.
- D.没有正确答案
系如下图所示,查询既学习课程号为001课程又学习课程号为002号课程的学生的学号,正确的是_______
![img](/2022/04/16/%E5%AD%A6%E4%B9%A0/%E8%AE%B0%E5%BD%95/%E6%95%B0%E6%8D%AE%E5%BA%93%E9%94%99%E9%A2%98/FCF4CF4C2F3E0FCCB9B1429D78C7FD76.png)
- A.
- B.
- C.
- D.
tip:D选项查询结果为空,原因自己想。
关系R与关系S只有一个公共属性,T1是R与S做θ连接的结果,T2是R与S自然连接的结果,则下列说法正确的是_______
- A.T1的属性个数大于T2的属性个数
- B.T1 的属性个数等于T2
- C.T1的属性个数小于T2
- D.T1的属性个数大于或等于T2的属性个数
tip:做θ连接时不需要将公共属性合并,而自然连接时需要,所以 T1 的属性个数大于 T2 的属性个数
已知关系S(S#,Sname,Sage,Sclass), SC(S#,C#,Score)。如下所示关系代数表达式的含义是________。
![img](/2022/04/16/%E5%AD%A6%E4%B9%A0/%E8%AE%B0%E5%BD%95/%E6%95%B0%E6%8D%AE%E5%BA%93%E9%94%99%E9%A2%98/59F24C56F07146B09A29D0EDA648B7B1.png)
- A.其他全不对
- B.查询没有学习过课程号为002号课程的学生姓名和年龄
- C.查询不仅仅学习课程号为002号课程的学生姓名和年龄
- D.查询学习课程号为002号课程的学生姓名和年龄
tips:此公式中 S X SC 运算之后 , 所有人都存在 C#= 002 所以答案为空。
表达“从一个关系的所有行中提取出满足某些条件的行”,“从一个关系的所有列中提取出某些列”“提取出属于一个关系但不属于另一关系的所有元组”“将两个关系必须按照某种条件串接成一个较大的关系”的操作依次是__________。
*1、并 2、交 3、积 4、选择 5、投影 6、差 7、连接*
- A.4567
- B.4537
- C.3567
- D.4561
tip:理解概念,认真读题。错选的原因是没有读到 必须按照某种条件串接 并只是简单的并起来就行了。连接有很多中条件可以选。
设关系R与关系S具有相同的目数(或称度数),且相对应属性的值取自同一个域,则R-(R-S)等于_________。
- A.R∩S
- B.R∪S
- C.S - R
- D.S
tip:为 R 与 S 的交,由同时出现在 R 和 S 中的元组构成,交运算可以通过差运算来实现: R S=R –(R S)=S –(S R)
INSERT INTO Goods(Name,Storage,Price) VALUES (’Keyboard’,3000,90.00)的作用是________。
- A.添加数据到一行中的部分列
- B.添加数据到一行中的所有列
- C.插入默认值
- D.插入多个行
tip:添加的可能是所有列,也可能是部分列。这题有歧义,没有给表结构
设关系Teacher的结构为:Teacher(T# char(3), Tname char(10), D# char(2), Salary float(2)),其中T#教师编号,Tname教师姓名,D#系号,Salary工资。Dept(D# char(2),Dname char(10),Dean char(10)),Dname系名,Dean系主任。若要将所有计算机系的教师工资上调10%,则可用_________。
- A.Update Teacher Set Salary = Salary * 1.1 Where D# in ( Select D# From Dept Where Dname=‘计算机’);
- B.Update Salary = Salary * 1.1 Where D# in ( Select D# From Dept Where Dname =‘计算机’);
- C.Update Salary = Salary * 1.1 Where D# in (Select D# From Dept Where Dname = 计算机);
- D.Update TABLE Teacher Set Salary = Salary * 1.1 Where D# in ( Select D# From Dept Where Dname = ‘计算机’);
tips:UPDATE 后直接接表名
陈述A:SubQuery1 UNION SubQuery2语句,其中SubQuery1和SubQuery2查询中相应的列必须以同一顺序出现。 陈述B:GROUP BY和HAVING子句不能在子查询中使用,这些子句只能用在最后一个查询结束时来总结和排序最后结果集。 关于陈述A和B,下列说法正确的是_________。
- A.陈述A正确,陈述B错误
- B.都是正确的
- C.都是错误的
- D.陈述A错误,陈述B正确
tips:对于并的理解
在SQL中,与”NOT IN”等价的操作符是_________。
- A.<> ALL
- B.= SOME
- C.<> SOME
- D.= ALL
tip:???不理解
已知如下关系:学生Student(S#, Sname),课程Course(C#, Cname, T#),选课SC(S#, C#, Score),教师T(T#, Tname)。其中S#为学号,Sname为学生命名,C#为课号,Cname为课程名,T#为教师编号,Score为成绩,Tname为教师名。
阅读SQL语句
SELECT S# FROM SC WHERE Score<60 GROUP BY C# HAVING Count(*)>2;
关于其查询结果,下列说法正确的是_____。
- A.有2人以上不及格课程的同学的学号 // 有2人以上不及格的课程,学习该课程的同学的学号
- B.有2门以上不及格课程的同学的学号
- C.有2门以上及格课程的同学的学号
- D.有2人以上及格课程的同学的学号
tips:傻逼题,自己理解
假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0, 则下列说法正确的是________。
- A.该元组在“子查询1 Except 子查询2”中出现0次;
- B.该元组在“子查询1 Union 子查询2”中出现m + n次;
- C.该元组在 “子查询1 Except ALL 子查询2”中出现m – n次;
- D.该元组在“子查询1 Intersect 子查询2”中出现min(m,n)次;
假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0,则下列说法正确的是_________。
- A.该元组在“子查询1 Union ALL 子查询2”中出现m + n次;
- B.该元组在 “子查询1 Union 子查询2”中出现m+n次;
- C.该元组在“子查询1 Union ALL 子查询2”中出现1次;
- D.该元组在 “子查询1 Union 子查询2”中出现Min(m,n)次;
假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0,则下列说法正确的是_________。
- A.该元组在“子查询1 Except 子查询2”中出现0次;
- B.该元组在“子查询1 Union 子查询2”中出现m + n次;
- C.该元组在 “子查询1 Except All 子查询2”中出现m – n次;
- D.该元组在“子查询1 Union All 子查询2”中出现max(m,n)次;
有一个学生表student,包含主键S#(学生编号)等。又有分数表SC,包含S#(学生编号)、score(分数)等。已知student表中共有50个学生,有45人参加了考试(分数存在SC表中),其中10人不及格。执行以下SQL语句:select * from student where exists (select S# from SC where score<60 ), 可返回_________条记录。
- A.50
- B.45
- C.10
- D.35
tips:因为这是非相关子查询,而且子查询始终为真(因为已知有10人不及格),故检索出的是Student表中的所有记录。
难点:并、交 exists嵌套双重否定的理解
关于数据库设计,下列说法正确的是 。
- A.若要开发一个信息系统,首先要确定使用哪一个DBMS来进行管理,然后才能进行数据库设计
- B.概念数据库设计需要关注用E-R Diagram的思想来理解需求,而不能仅仅关注绘制E-R Diagram的图形
- C.逻辑数据库设计的关注点是属性、结构和命名的冲突问题,数据库设计的规范性问题和DBMS的选型问题
- D.物理数据库设计仅需要考虑数据量的大小、磁盘空间占用及存储结构等特性,但无关具体的DBMS
tips:逻辑数据库不需要关注DBMS选型
若要将E-R图
转换成关系模式,转换正确的是_________。
- A.学生(学号,课程号,…);课程(课程号,…)
- B.选修(学号,课程号,…)
- C.学生(学号,…);课程 (课程号,学号,…..)
- D.学生(学号,…);课程(课程号,…);选修(学号,课程号,…)
tips:多对多应新建一个关系作为练习
关于E-R 图向关系模式的转换的规则正确的是_________。
- A.复合属性转换时只能将每个分量属性作为所在实体对应关系的属性
- B.一对一联系的转换只能将联系定义为一个新的关系,再将属性设为参与双方的关键字属性
- C.泛化实体与具体化实体在转换时,可以不要泛化实体,而仅将具体化实体转换成关系
- D.一对多联系的转换,需将多方参与实体的关键字作为单方参与实体对应关系的属性
tips:D选项说反了,语文理解问题,自己体会。我也看不懂。反正是要把只有一个的那边的属性,加到有很多个个体的属性里面去。
一对多联系的转换,需将单方参与实体的关键字作为多方参与实体对应关系的属性。
如:商店(商店名,xxx)、商品(商品号,xxx,商店名)。1:N关系
下列由E-R图向关系模式转换具体实例中,明显不正确的是________。注意:关系模式中带下划线的属性为主键。
- A.
- B.
- C.
- D.
tips:注意D选项的已知
在关系模式R(U,F)中,如果F是最小函数依赖集,则____________。
- A.R∈2NF
- B.R∈3NF
- C.R∈BCNF
- D.R的规范化程度与F是否最小函数依赖集无关。
tips:D
一般情况,企业会将从一个供应商处一次所进的多种货物办理一次入库,因此设计了关系模式:入库单(单号, 日期, 库房, 供应商,物品, 数量, 金额),下列说法正确的是___ ______。
- A.不满足第2范式
- B.满足第2范式但不满足第3范式
- C.满足第3范式
- D.其他都不对
对设备管理,请分析关系模式:设备(设备编号, 设备名, 生产商编号,生产商名称,生产商地址,配件编号,配件名称,配件价格,设备价格),说法正确的是_______________。
- A.不满足第2范式
- B.满足第2范式但不满足第3范式
- C.满足第3范式
- D.其他不对