数据库期末考前复习题(单选+多选+判断+解答)

文章目录

    • #数据库考前复习题
    • 一、 选择
      • 1.单选题
      • 2.多选题
    • 二、判断题
    • 三、解答
      • 请描述数据库中的三大范式
      • 关系型数据库ACID特性


#数据库考前复习题

一、 选择

1.单选题

1.使用limit进行分页查询,其中每页10条数据,查询第5页应该写为?

SELECT * FROM your_table_name LIMIT 40, 10;
这里的40是偏移量,表示从结果集中的第41条记录开始,而10则表示每页显示的数据条数。因此,查询第5页的数据需要计算偏移量:(5-1)*10=40。

2.查找岗位是工程师且薪水在6000以上的记录,逻辑表达式为?

岗位 = ‘工程师’ AND 薪水 > 6000

3.为提升表的查询速度,可以创建的数据库对象是?

索引

4.在openGauss中不是变长字符串类型是?

A.VARCHAR(n). BVARCHAR2(n). C.CHAR(n). D.NVARCHAR(n)
C.CHAR(n)不是变长字符串类型,而是定长字符串类型

5.删除表结构的关键字是?

删除表结构的关键字是DROP

6.在OpenGauss中,用于授权的语法是GRANT和REVOKE。

GRANT语句用于授予用户或用户组特定的访问权限
REVOKE语句用于撤销用户或用户组的访问权限

7.查询所有的数据和描述信息的命令?

/l

8.以下关于SQL语言描述错误的是?D

A.SQL语言是非过程化编程语言。B.不需要用户指定数据存放方法。
C.不需要用户了解具体数据存放方法。D.不同版本间SQL语言不互相兼容

2.多选题

9.openGauss中链接查询有哪些?

内连接(Inner Join):返回满足连接条件的行。
左连接(Left Join):返回左表中所有行,以及右表中满足连接条件的行。
右连接(Right Join):返回右表中所有行,以及左表中满足连接条件的行。
全外连接(Full Outer Join):返回左表和右表中的所有行,同时匹配行会合并。
交叉连接(CROSS JOIN)

10.触发器中new或old对象可在表哪些操作中出现?

插入操作(INSERT):在触发器中,你可以引用 new 对象来访问将要插入到表中的新数据。
更新操作(UPDATE):在触发器中,你可以引用 new 和 old 对象来访问更新前后的数据,new 对象表示更新后的数据,old 对象表示更新前的数据。
删除操作(DELETE):在触发器中,你可以引用 old 对象来访问被删除的数据。

11.常见的逻辑操作符

AND与
OR或
NOT非

12.union和union all

union会过滤重复的记录
union all不会过滤重复的记录

13.属于openGauss中的约束有哪些?

主键约束(Primary Key Constraint)
外键约束(Foreign Key Constraint)
唯一约束(Unique Constraint)
检查约束(Check Constraint)
NOT NULL 也是一种约束,它用于确保表中的列不接受空值

14.属于DDL语句的是?

CREATE
ALTER
DROP

15.数据库系统优势有?

整体数据结构化、数据共享性高、数据独立性高、统一的管理和控制

数据库期末考前复习题(单选+多选+判断+解答)_第1张图片
创建索引的语句正确的是?

A.create index t1_ind on t1(f1)
B.create index t1_ind on t1(f1,f2) where f1>f0

D.create unique index t1_ind on t1(f1,f2)

二、判断题

17.openGauss安装时使用的omm账号,该账号可以进行远程连接

错误
OMM 账号是 OpenGauss 数据库的管理账号,
通过 OMM 账号,管理员可以远程连接到 OpenGauss

18.序列可以产生一组等间隔的数值,能自增,主要用于表的主键

正确

19.openGauss是一个关系型数据库

正确

20.TRUNCATE TABLE用于删除表的数据,是DML语句

错误
TRUNCATE TABLE 是一个 DDL(数据定义语言)语句

21.select count(*) from table1 group by name where id>10,
此语句中where使用是否正确

错误
WHERE 子句应该在 GROUP BY 子句之前使用

22.openGauss默认是允许远程连接

错误
默认情况下是禁止远程连接的,这是出于安全考虑的一种默认配置

23.在openGauss数据库中撤销用户权限使用revoke.

正确

24.NoAQL和NewSQL数据库的出现能够彻底颠覆和取代原有的关系型数据库系统

错误

三、解答

请描述数据库中的三大范式

数据库中的三大范式是指关系数据库设计中的规范化过程中的三个基本规范化级别,它们旨在减少数据冗余、提高数据一致性和避免更新异常。这些范式是:

  • 第一范式(1NF):确保每个列都是原子的
    第一范式要求关系表中的所有字段都是不可再分的原子值,即每个单元格中只能包含一个值,而不能是多个值的组合。这样可以减少数据冗余,并且使得数据更容易管理和查询。

  • 第二范式(2NF):确保非主属性完全依赖于候选关键字
    第二范式要求表中的所有字段都要完全依赖于候选关键字,而不能依赖于部分候选关键字。如果有部分字段与候选关键字相关,那么这部分字段应该被拆分出去成为单独的表,以消除数据冗余。

  • 第三范式(3NF):确保非主属性之间不存在传递依赖
    第三范式要求表中的所有字段都只依赖于主键,而不依赖于其他非主键字段,也就是消除非主属性对其他非主属性的传递依赖。这样可以进一步减少数据冗余,提高数据的一致性和更新的稳定性。

通过逐级的规范化过程,设计者可以将数据库表设计得更加结构化、高效,并且更容易维护和管理。然而,并不是所有情况下都需要追求到第三范式,有时根据实际情况,可以在某些字段上做一定的冗余设计来提高查询性能。

关系型数据库ACID特性

  • 原子性(Atomicity):事务是一个不可分割的工作单位,要么全部执行,要么全部不执行。这意味着在事务中的所有操作要么全部提交成功,要么全部失败回滚,不会出现部分执行的情况。

  • 一致性(Consistency):事务执行前后,数据库都必须保持一致的状态。这意味着事务执行前后,数据库的完整性约束没有被破坏,例如唯一性约束、外键约束等依然得到满足。

  • 隔离性(Isolation):多个事务并发执行时,每个事务的执行都应该与其他事务隔禅开来,互不干扰。这意味着并发执行的事务之间不能相互影响,即使是在并发执行的情况下,各个事务之间也要保持相互独立的状态。

  • 持久性(Durability):一旦事务提交,其所做的修改将永久保存在数据库中,并且不会因为系统故障而丢失。即使在数据库发生故障或崩溃的情况下,已经提交的事务对数据库的影响都将得到保留。

点击移步博客主页,欢迎光临~

偷cyk的图

你可能感兴趣的:(MySQL,数据库,gaussdb,mysql)