面试整理-数据库基础知识总结

518 阅读7分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

1. 基础知识

  • 数据库管理系统(DBMS):位于用户与操作系统之间的一层数据管理软件。主要功能:数据定义功能(DDL);数据组织、存储和管理;数据操纵功能(DML);数据库的事务管理和运行管理;数据库的建立和维护功能;其他功能。
  • 数据库系统(DBS):由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
  • 数据管理技术三个阶段:人工管理、文件系统、数据库系统。
  • 两类数据模型:概念模型(又叫信息模型);逻辑模型、物理模型
  • 数据模型的组成要素:数据结构、数据操纵和数据的完整性约束条件。
  • 关系的完整性约束条件包括三大类:实体完整性、参照完整性、和用户自定义完整性。
  • 数据库系统的三级模式结构:模式、外模式、内模式。数据库的二级映像:外模式/模式映像,模式/内模式映像。
  • 关系操作:查询操作和插入、删除、修改操作两大部分。查询操作又可分为选择、投影、连接、除、并、差、交、笛卡尔积等。
  • 在SQL中,子模式、模式和存储模式分别对应视图、基本表和存储文件。
  • SQL语言具有:数据定义、数据操纵、数据控制、
  • 数据库的基本特点:数据可以共享、数据独立性、数据冗余小、易扩充、统一管理和控制

2. 数据库的三级模式结构?

数据库系统的三级模式结构:模式、外模式、内模式。有效地组织、管理数据,提高了数据库的逻辑独立性和物理独立性。

(1)外模式 -- 子模式/用户模式

对应于用户级。反映了数据库系统的用户观。对应数据视图,即用户可以看到的部分。是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。用户可以通过外模式描述语言来描述、定义对应于用户的数据记录(外模式),也可以利用数据操纵语言(Data Manipulation Language,DML)对这些数据记录进行操作。

(2)模式 -- 概念模式/逻辑模式

对应于概念级。反映了数据库系统的整体观。对应基本表,即对关系的描写。是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。它是由数据库管理系统提供的数据模式描述语言(Data Description Language,DDL)来描述、定义的。

(3)内模式 -- 存储模式

对应于物理级。 反映了数据库系统的存储观。对应存储文件,即数据库的物理级外观。它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式和物理结构,对应着实际存储在外存储介质上的数据库。内模式由内模式描述语言来描述、定义的。

3. 数据库的两级映射?

数据库系统在三级模式之间提供了两级映像:模式/内模式的映像、外模式/模式的映像。

  • 模式/内模式的映像:实现概念模式到内模式之间的相互转换。
  • 外模式/模式的映像:实现外模式到概念模式之间的相互转换。 数据的物理独立性?当数据库的内模式发生改变时,数据的的逻辑结构不变。由于应用程序处理的只是数据的逻辑结构,这样物理独立性可以保证,当数据的物理结构改变了,应用程序不用改变。但是,为了保证应用程序能够正确执行,需要修改概念模式/内模式之间的映像。

数据的逻辑独立性?指用户的应用程序与数据库结构是相互独立的。数据的逻辑结构发生变化后,用户程序也可以不修改。但是,为了保证应用程序能够正确执行,需要修改外模式/概念模式之间的映像。

4. 简述mysql数据库中查询,插入,更新,删除表记录的指令格式?

插入记录的指令格式:insert into 表名(字段名) values(key值)

查询记录的指令格式:select 字段名 from 表名 where 条件

更新表记录的指令格式:update 表名 set 字段 = 更新的key值;

删除表记录的指令格式:delete from 表名 where 条件

5. 简述用户授权命令的格式?

grant 权限 on 库.表 to 用户名@访问地址 identified by 密码 with grant option(是否给用户授权的权限);

6. 数据的约束条件:完整性约束

  • 域约束:对属性取值范围的约束
  • 键约束:每个关系必须要有主键,且每个主键必须不相同
  • 非空约束:属性值不能为NULL
  • 实体完整性约束:主键值不能为空
  • 参照完整性约束:外键可以取NULL值,但若外键为另一关系主键,则不能为NULL。
  • 用户定义的完整性

各种数据操作可能违反的完整性约束

插入操作:域约束、键约束、非空约束、实体完整性约束、参照完整性约束

删除操作:参照完整性约束

更新操作:域约束、键约束、非空约束、实体完整性约束、参照完整性约束

7. 系统软件与应用软件

(1)应用软件是专门为某一应用目的而编制的软件,较常见的如:

  • 文字处理软件( 例如WORD、WPS等。)

  • 信息管理软件(用于输入、存贮、修改、检索各种信息,例如工资管理软件、人事管理软件、仓库管理软件、计划管理软件等。这种软件发展到一定水平后,形成一个完整、高效的管理信息系统,简称MIS。)

  • 辅助设计软件(用于高效地绘制、修改工程图纸,进行设计中的常规计算)

  • 实时控制软件( 用于随时搜集生产装置运行状态信息,按预定的方案实施控制其完成任务。) (2)系统软件: 指令集中组织在一起,形成专门的软件,用来支持应用软件的运行。有代表性的系统软件有:

  • 操作系统(在微机上常见的有:DOS、WINDOWS、UNIX、OS/2等)

  • 数据库管理系统(有组织地、动态地存贮大量数据,使人们能方便、高效地使用这些数据。现在比较流行的数据库有FoxPro、DB-2、Access、SQL-server等)

  • 编译软件( 用高级语言来编写程序CPU并不能直接执行这些新的指令,需要软件专门用来将源程序中的每条指令翻译成一系列CPU能接受的基本指令(也称机器语言)使源程序转化成能在计算机上运行的程序。完成这种翻译的软件称为高级语言编译软件。)

8. 数据库范式:

  • 1NF(First Normal Form):当且仅当所有域只包含原子值,即每个分量都是不可再分的数据项,则称实体E满足第一范式
  • 2NF(Second Normal Form):当且仅当实体E满足第一范式,且每一个非键属性完全依赖主键时,满足第二范式
  • 3NF(Third Normal Form):当且仅当实体E是第二范式(2NF),且E中没有非主属性传递依赖时,满足第三范式