Bootstrap

数据库学习记录——错题总结(二)

第一套

1.若系统在运行过程中,由于某种硬件故障使存储在外存上的数据部分损失或全部损失,这种情况称为( )?

正确答案: A 你的答案: A (正确)
介质故障
运行故障
系统故障
事务故障

常见的四种故障

(1)事务内部的故障:事务内部故障可分为预期的和非预期的,其中大部分的故障都是非预期的。预期的事务内部故障是指可以通过事务程序本身发现的事务内部故障;非预期的事务内部故障是不能由事务程序处理的,如运算溢出故障、并发事务死锁故障、违反了某些完整性限制而导致的故障等。

(2)系统故障:系统故障也称为软故障,是指数据库在运行过程中,由于硬件故障、数据库软件及操作系统的漏洞、突然停电灯情况,导致系统停止运转,所有正在运行的事务以非正常方式终止,需要系统重新启动的一类故障。这类事务不破坏数据库,但是影响正在运行的所有事务。

(3)介质故障:介质故障也称为硬故障,主要指数据库在运行过程中,由于磁头碰撞、磁盘损坏、强磁干扰、天灾人祸等情况,使得数据库中的数据部分或全部丢失的一类故障。

(4)计算机病毒故障:计算机病毒故障是一种恶意的计算机程序,它可以像病毒一样繁殖和传播,在对计算机系统造成破坏的同时也可能对数据库系统造成破坏(破坏方式以数据库文件为主)。
区别系统故障还是介质故障就看有没有破坏数据库中的数据,题中破坏了数据库的数据,所以应是介质故障。

2.SQL语言允许使用通配符进行字符串匹配的操作,其中‘%’可以表示
正确答案: D 你的答案: C (错误)
零个字符
1个字符
多个字符
其他3个选项都可以

为在搜索子句中使用通配符,必须使用LIKE操作符:
1、百分号(%)通配符:可匹配0个、1个或多个字符
2、下划线(_)通配符:只可匹配单个字符

3.Mysql中表student_info(id,name,birth,sex),字段类型都是varchar,插入:1018 , 赵六 , 2003-08-02 , 男;
SQL正确的是()?
正确答案: C 你的答案: D (错误)

insert overwrite student_info values('1018' , '赵六' , '2003-08-02' , '男');
insert into student_info values(1018 , '赵六' , '2003-08-02' , '男');
insert into student_info(`birth`,`id`,name,`sex`) values('2003-08-02' ,'1018' , '赵六' , '男');
insert into student_info value('1018' , '赵六' , '2003-08-02' , '男');

a选项overwrite会删除原有数据再写入新数据 b选项的1018是数字格式,题干中要求varchar格式。 d选项value少了s

4.关于数据独立性,下列说法正确的为__________。
正确答案: A 你的答案: C (错误)
外模式到概念模式的映像实现了数据的逻辑独立性;
外模式到内模式的映像实现了数据的逻辑独立性;
概念模式到内模式的映像实现了数据的逻辑独立性;
以上说法均不正确。

数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成.
为了能够在系统内部实现这3个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:
外模式/模式映像(映像定义通常包含在各自外模式的描述中,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性,应用程序是依据外模式编写的)
模式/内模式映像(包含在模式描述中,此映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关系,它保证了数据与程序的物理独立性,所以称为数据的物理独立性

  1. 模式(Schema)
    模式也称为:逻辑模式,它是DB中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式层是数据库模式结构的中间层,既不涉及到数据的物理存储细节和硬件环境,也与具体的应用程序、应用开发工具以及高级程序设计语言无关(C、C++、JAVA等)。
    模式就是数据库数据在逻辑上的视图,且一个数据库只有一个模式。实际工作中,模式就等同于程序员创建一个具体的数据库的全部操作,如:这是一个MySQL数据库,有2张表,每个表的名字,属性的名字、类型、取值范围,主键,外键,索引,其他完整性约束等等。
    DBMS提供模式描述语言(模式DDL)来严格地定义模式。

  2. 外模式
    外模式也称为:子模式(subschema)/用户模式,它是数据库用户(应用程序员、最终用户)能够看到的使用的局部数据的逻辑结构和特征的描述,是数据库的数据视图,是与某一个应用有关的数据的逻辑表示。
    外模式通常是模式的子集。一个数据库可以有多个外模式。同一个外模式可以为某一用户的多个应用系统所使用,但一个应用系统只能使用一个外模式。
    外模式是保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据,数据库中的其余数据是不可见的。
    DBMS提供子模式描述语言(子模式DDL)来严格地定义子模式。

  3. 内模式
    内模式也称为:存储模式(Storage schema),一个数据库只有一个内模式。它是数据库物理结构和存储方式的描述,是数据在数据库内部的表示方式。如:记录的存储方式是堆存储,还是按照某些属性值的升(降)存储,还是按照属性值聚簇(cluster)存储;索引按照什么方式组织,是B+树索引,还是hash索引等等。
    DBMS提供内模式描述语言(内模式DDL/存储模式DDL)来严格定义内模式。

模式到内模式的映像实现了数据的物理独立性。
外模式到模式的映像实现了数据的逻辑独立性。

第二套

1.在 SELECT 语句中,用于分组的子句是 __________
正确答案: B 你的答案: B (正确)
WHERE:条件语句
GROUP BY:分组语句
ORDER BY:排序语句
FROM:从xx表中

补充:如果ORDER BY子句后未指定ASC或DESC,默认使用以下哪个?
ASC

2.用二维表结构表示实体以及实体间联系的数据模型称为( )?
正确答案: A 你的答案: B (错误)
关系模型
网状模型
层次模型
面向对象模型

  • 层次模型:采用的是**树(二叉树)**的结构来表达实体和实体间联系
  • 网状模型:采用的是的结构来表达实体和实体间联系
  • 对象模型:采用的面向对象的思想,用对象和其之间的联系来表达实体和实体间联系
  • 关系模型:采用的是二维表

补充:在关系数据库设计中,关系模式是用来记录用户数据的( )。
正确答案: A 你的答案: A (正确)
二维表
视图
属性
实体

解析:【解析】在关系数据库中用关系模型来表示数据结构,表示为一个二维表,一个关系就是一个二维表。故本题答案为 A 选项

3.不能激活触发器执行的事件是( )。
正确答案: A 你的答案: A (正确)
SELECT
UPDATE
INSERT
DELETE
触发器主要是通过事件(增、删、改)进行触发被自动调用执行的。

4.以下不属于DML的是?

正确答案: C 你的答案: C (正确)
INSERT
DELETE
CREATE
UPDATE

数据查询语言DQL:由select字句,from字句,Where字句组成的查询块(Query)

数据操纵语言DML:insert,update,delete
(Manage)

数据定义语言DDL:Create字句,如创建索引。 表 视图等(Define)

数据控制语言DCL:Grant字句,Commit字句,用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。(Control)

5.已知关系SPJ ( S# , P# , J# , QTY ),把对关系SPJ的属性QTY的修改权授予用户张三的T-SQL语句是( )。

正确答案: C 你的答案: C (正确)
GRANT QTY ON SPJ TO 张三
GRANT UPDATE ON SPJ TO张三
GRANT UPDATE (QTY) ON SPJ TO张三
GRANT UPDATE ON SPJ (QTY) TO张三

Grant语句:Grant 权限(属性) ON TABLE TO SB

6.下列关于mysql的表述错误的一项是()
正确答案: C 你的答案: C (正确)

当确定数据更改加工完毕,需要进行存储时,此时,将数据传递出去,称为事务的提交
触发器主要用于监视某个表的insert、update以及delete等更新操作,这些操作可以分别激活该表的insert、update或者delete类型的触发程序运行,从而实现数据的自动维护
在视图上可以定义新的视图,也可以建立基本表
当数据加工过程中出现错误,把数据和状态恢复到加工之前,称之为事务的回滚

在视图上可以建立新的视图,但是不能建立基本表。

补充:在数据表视图中,不能()。
正确答案: A 你的答案: A (正确)
修改字段的类型
修改字段的名称
删除一个字段
删除一条记录

Access的数据表视图中,可以修改字段名称、删除字段和删除记录,但是不能够修改字段类型。字段的类型需要在设计视图中修改

7.消除了部分函数依赖的1NF的关系模式,必定是( )。

正确答案: B 你的答案: A (错误)
1NF
2NF
3NF
BCNF

1NF : 属性是原子性的,即不可拆分的;例如姓名这个属性是一般不可拆分的;而社会保险号如果是由出生年月日与姓名缩写构成的话,就是可拆分的:包含可拆分的含义:出生年月日,姓名; 是否可拆分取决于对含义的解释;

2NF:解决了非主键属性对主键属性的部分依赖;如表(A, B, C, D),其中ABCD代表属性,假设(A, B)是主键,若C只依赖于B,则这个表是不符合2NF的,可拆分为(A, B, D)与 (B, C)两张表;很明显,如果主键只有一个属性,那么肯定是2NF

3NF:解决了非主键属性对主键属性的传递依赖;如表(A,B,C,D),如果主键是A, 而B依赖于A,C依赖于B,则这个表有传递依赖,是不符合3NF的;
范式的目的是为了减少/消除冗余;

补充:
一般情况,企业会将从一个供应商处一次所进的多种货物办理一次入库,因此设计了关系模式:入库单(单号, 日期, 库房, 供应商,物品, 数量, 金额),下列说法正确的是_________。

正确答案: A 你的答案: B (错误)
不满足第2范式;
满足第2范式但不满足第3范式;
满足第3范式;
都不对。

知识点:3NF
单单看属性名,容易看不出问题,建议想想出填入数据后的表,看看不同元组是否是低冗余的,精炼的。
比如这个题, 题目说从一个供货商处进货多种商品,填入数据如下:

订单号    日期     库房     供应商     物品    数量    金额
1         2019-8-1    001      华为       p20       10      50000
1         2019-8-1    001      华为    mate20     5       20000
1         2019-8-1    001      华为   mate20 pro  3      30000

这样一看就明显了,前四个属性都是重复的,因为日期、库房、供应商仅依赖于订单号,而与物品(也是主属性之一)无关,也就是说不符合2NF。
要拆成两个表:订单表(订单号,时间,库房,供货商),库存表(订单号,物品,数量,金额)

8.Web程序通常采用MVC架构来设计,数据库相关操作属于()?

正确答案: A 你的答案: B (错误)
Model
Controller
都不属于
View

MVC框架是三层架构:模式层、视图层、控制层
模式层:表示企业数据和业务逻辑,是应用程序的主体部分;
视图层:是用户看到的并与之交互的界面;
控制层:接收用户的输入并调用模型和视图去完成用户的需求;
属于和数据库相关操作是在模式层。

9.下面有关sql绑定变量的描述,说法错误的是?
正确答案: D 你的答案: B (错误)

绑定变量是指在SQL语句中使用变量,改变变量的值来改变SQL语句的执行结果
使用绑定变量,可以减少SQL语句的解析,能减少数据库引擎消耗在SQL语句解析上的资源
使用绑定变量,提高了编程效率和可靠性,减少访问数据库的次数
使用绑定变量,查询优化器会预估的比字面变量更加真实

D,绑定变量被使用时,查询优化器会忽略其具体值,因此其预估的准确性远不如使用字面量值真实

绑定变量是相对文本变量来讲的,所谓文本变量是指在SQL直接书写查询条件,这样的SQL在不同条件下需要反复解析,绑定变量是指使用变量来代替直接书写条件,查询bind value在运行时传递,然后绑定执行。优点是减少硬解析,降低CPU的争用,节省shared_pool ;缺点是不能使用histogram,sql优化比较困难

10
图1中( )是关系完备的系统。
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
S是system系统的意思,I是integrity完整性,M是manipulation操作性。
1为系统
2为最小关系系统
3为完备关系系统
4为全关系系统

表式系统:仅支持关系的数据结构,不支持关系集合级的操作
最小关系系统:仅支持关系数据结构和三种关系操作选择、投影、连接
关系完备的系统:支持关系数据结构和所有的关系代数操作
全关系系统:支持关系模型的所有特征(包括结构和操作),所以完整性也被满足,目前大多数关系系统已不同程度上接近或达到了这个目标

11.下列数据模型中,数据独立性最高的是()

正确答案: B 你的答案: B (正确)
网状数据模型
关系数据模型
层次数据模型
非关系模型

关系数据库系统提供三级模式与二级映像,可以实现数据库的逻辑独立性与物理独立性,因而具有最高的数据独立性。

12.在Mysql中,语句 SELECT IF(-1,5,2) 的返回值是:
正确答案: D 你的答案: D (正确)
2
6
-1
5
if(条件,表达式1,表达式2)
如果条件为真(即不为0),执行表达式1,否则,执行表达式2.

13.设关系 R 和 S 的属性个数分别为 r 和 s ,则 (R×S) 操作结果的属性个数为 ( )

正确答案: A 你的答案: D (错误)
r+s
r-s
r×s
max(r,s)

选 A
【分析】本题考察的是笛卡尔乘积的内容
笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尓积(Cartesian product),又称直积,表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。结果的属性个数等于x+y,结果的元组个数等于x*y.
举个例子,假设集合R={a, b},集合S={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}。在这个例子中,元组即为(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2),共六个。而属性为a,b,0,1,2,共5个,即为r+s。
综上所述,答案选A

14.E-R 图中的主要元素是( )、( )和属性。
正确答案: C F 你的答案: C F (正确)
记录型
结点
实体型

文件
联系
有向边

E-R图的主要元素是实体、属性和联系。
就数据库而言,实体往往指某类事物的集合。
实体之间的联系有一对一、一对多、多对多。
属性为实体或联系在某一方面的特征。

;