2021年09月05日 数据库1

考点1:联系 一对一,一对多,多对多

学校中有多个院系和多名教师,每个教师只能属于一个院系,一个系可以有多名教师,院系和教师之间的关系是( )。

  • A 一对多
  • B 一对一
  • C 一对二
  • D 多对多

解析

显示答案/隐藏答案正确答案: A

考点2:数据库范式

在通常情况下,下面的关系中不可以作为关系数据库的关系是()

  • A R1(学生号,学生名,性别)
  • B R2(学生号,学生名,班级号)
  • C R3(学生号,学生名,宿舍号)
  • D R4(学生号,学生名,简历)

解析

显示答案/隐藏答案正确答案: D

1NF是第一范式:数据库中的每一项都是不可分割的基本数据项.

而简历中包含学号与姓名,不满足第一范式。

数据库范式1nf,2nf,3nf

1nf: 每一列原子性,不可再分
2nf: 非主键列完全依赖于(联合)主键
3nf: 非主键直接依赖于主键

考点3:DML语句

以下不属于DML的是?

  • A INSERT
  • B DELETE
  • C CREATE
  • D UPDATE

解析

显示答案/隐藏答案正确答案: C

DQL DML DDL DCL

数据查询语言DQL: 由select字句,from字句,Where字句组成的查询块
数据操纵语言DML:insert,update,delete
数据定义语言DDL:Create字句,如创建索引。 表 视图等
数据控制语言DCL:Grant字句,Commit字句,用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。

考点4:索引

关于数据库的描述错误的是:

  • A 创建索引一定能提升查询时间
  • B 主键的数据列要创建索引
  • C 外键的数据列要建立索引
  • D 常见数据库索引有 Hash 索引,B-tree 索引

解析

显示答案/隐藏答案正确答案: A

首先明白为什么索引会增加速度,DB在执行一条Sql语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索结果集合。
如果我们对某一字段增加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,所以能明显增加查询的速度。

那么在任何时候都应该加索引么?这里有几个反例:
1、如果每次都需要取到所有表记录,无论如何都必须进行全表扫描了,那么是否加索引也没有意义了。
2、对非唯一的字段,例如“性别”这种大量重复值的字段,增加索引也没有什么意义。
3、对于记录比较少的表,增加索引不会带来速度的优化反而浪费了存储空间,因为索引是需要存储空间的,而且有个致命缺点是对于update/insert/delete的每次执行,字段的索引都必须重新计算更新,这就拖慢了速度

常见的数据库索引是B-tree索引,虽然Hash 索引效率很高,但是他有很多弊端,比如

Hash 索引仅仅能满足”=”,”IN”和”<=>”查询,不能使用范围查询等,这些弊端导致其不是常见的数据库索引。

考点5:数据模型及其数据结构

关系数据模型的基本数据结构是( )

  • A 树
  • B 图
  • C 索引
  • D 关系

解析

显示答案/隐藏答案正确答案: D

关系数据模型的逻辑结构是关系
层次数据模型的逻辑结构是
网状数据结构的逻辑结构是

关系模型的数据结构是关系,数据的逻辑结构是二维表。

考点6:SQL创建主键 SQL删除主键

下面Transact-SQL语句中可以用于创建主键的是()

  • A alter table table1 with notcheck add constraint [PK_table1] primary key nonclustered (column1) on primary;
  • B alter table table1 column1 primary key;
  • C alter table table1 column1;
  • D create table table1 (column1 char(13) not null primary,column2 int not) on primary;

解析

显示答案/隐藏答案正确答案: A

删除主键

表中删除主键为:

1
alert table table_test drop primary key;

添加主键

表中增加主键为:

1
alert table table_test add primary key(id);

注意add,B,C,D都没有add关键字,可以排除。

考点7:分布式数据库系统DDBS

在DDBS中,数据传输量是衡量查询时间的一个主要指标,导致数据传输量大的主要原因是( )。

  • A 场地间距离过大
  • B 数据库的数据量大
  • C 不同场地间的联接操作
  • D 在CPU上处理通信的代价高

解析

显示答案/隐藏答案正确答案: C

DDBS:Distributed DataBase System 分布式数据库系统

考点8:数据库技术的根本目标

数据库技术的根本目标是要解决数据的 ( ) 。

  • A 存储问题
  • B 共享问题
  • C 安全问题
  • D 保护问题

解析

显示答案/隐藏答案正确答案: B

数据库的直接目标是解决数据存储问题,根本目标是为了不同用户或应用程序之间的数据共享。

考点9:视图可以从哪里导出

视图是由下面哪两者导出的表()。

  • A 模式、关系
  • B 基本表、视图
  • C 基本关系、关系
  • D 内模式、外模式

解析

显示答案/隐藏答案正确答案: B

SQL中,内模式模式、外模式分别对应存储文件基本表、视图

考点10:MySQL SQL注入

Mysql sql注入中使用延时注入时常用的语句是()

  • A wait for delay '0:0:10
  • B sleep(5)
  • C benchmark(100000000,md5(1))
  • D union select

解析

显示答案/隐藏答案正确答案: BC

函数注入

MySQL benchmark(100000,md5(1))或者sleep(5)
PostgreSQL PG_SLEEP(5)或者 GENERATE_SERIES(1,100000)
MS SQL server WAITFOR DELAY ‘0:05’

这里有一张图片