天天打游戏,又因为初复五比五,有点焦虑了,也有点不自信了。

吗的白天好好学习,晚上打老头环。

部分内容为整个转载,部分自己总结,转载链接就挂文章内了

转载的文章
转载的文章

1.什么是数据库的概念结构试述其特点和设计策略

将需求分析得到的用户需求抽象为信息结构既概念模型的过程就是概念结构设计。
对概念模型有以下要求
1)有丰富的语义表达能力,能表达用户的各种需求
2)易于交流和理解,从而可以用它的不熟悉计算机的用户交换意见
3)要易于更改。当应用环境和应用要求改变时,概念模型要很容易的修改和扩充以反映这种变化
4)易于向各种数据模型转换

2.数据库的概念模型

就是从现实世界到信息世界的第一层抽象,确定领域实体属性关系等,使用E-R图表示,E-R图主要是由实体、属性和联系三要素构成的。

3.数据库的逻辑模型

是将概念模型转化为具体的数据模型的过程,既按照概念结构设计阶段建立的基本E-R图,按选定的管理系统软件支持的数据模型,转换成相应的逻辑模型。这种转换要符合关系数据模型的原则。

4.数据库的物理模型

根据逻辑模型对应到具体的数据模型的机器实现。物理模型是对真实数据库的描述。如关系数据库中的一些对象为表、视图、字段是否为空、默认值。

5. 数据库系统的特点是什么

数据结构化、数据共享性高、冗余度低易扩充、数据独立性高,数据由DBMS统一管理

6.数据库管理系统的主要功能是什么

数据定义、数据操作、数据库的运行管理、数据库建立和维护

7.DBA的职责是什么

DBA(数据库管理员)
DBA负责全面管理和控制数据库系统的职责,具体有:
1)决定数据库中要存放哪些信息
2)决定数据库的存储结构和存取策略
3)定义数据的安全性要求和完整性约束条件
4)监控数据库的使用和运行:转存数据、维护日志文件、故障恢复
5)数据库的改进和重组重构:对运行情况进行记录、统计分析,以此不断改进数据库设计

8.和文件系统相比,数据库文件有什么优点

文件系统 数据库管理系统
面对某一应用 面向现实世界
共享性差,冗余度大 共享性高,冗余度小
独立性差 具有较高的物理独立性和逻辑独立性

9. 三级模式结构是什么?二级映射有什么优点?

三级模式包括外模式、模式、内模式

内模式:描述了数据库的物理结构和存储方式
模式:描述了数据库中全体数据的逻辑结构和特征
外模式:描述了用户可见的局部数据的逻辑结构和特征

外模式/模式映像的优点:当模式改变时,由DBA对外模式/模式影像做相应的改变,外模式可以保持不变。应用程序是根据外模式而编写的,因而应用程序不必修改,保证了数据与逻辑的独立性,即数据的逻辑独立性

内模式/模式映像的优点:当数据库的存储结构改变时,由DBA对模式/内模式映射作相应的改变,可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序的物理独立性,即数据的物理独立性

10.关系模型中的完整性约束是哪几类?定义?

实体完整性:关系模式中的主码不能为空值
参照完整:关系模式中的外码只能是空值或者另一关系模式的主码
用户定义完整性:关系模式中针对某一属性的约束

11.SQL的特点

综合统一。集DCL、DML、DDL功能于一体
高度非过程化。使用SQL进行数据操作时,是需要提出“做什么”,而不需要指明怎么做。
面向集合的操作方式,操作对象、查找结果都可以是元组的集合
同一语法结构提供多种使用方式。即可以作为独立语言进行交互,又可以作为嵌入到更高级的语言程序中进行操作
语言简洁,易学易用

12.什么是数据库操作语言、什么是数据库控制语言

数据操作语言:对表中的数据进行插入、删除和修改等操作,实现对数据库的基本操作。如:SELECT命令的作用是检查表的内容,UPDATE命令的作用是修改表等等
数据控制语言:是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT、REVOKE

13.等值连接和自然连接的区别是什么

自然连接是等值连接的一种特殊情况;
等值连接要求连接的是值相等的分量,两个关系中可以没有相同的属性名;进行自然连接的两个关系中必须有相同的属性名
等值连接不要求去掉重复属性列;自然连接时需要除掉重复的属性列

14.外连接是什么

外连接:是指两个表在进行操作时,不仅返回符号连接和查询条件的元组,还返回不符合条件的一些元组;
左外连接:是指返回左表中仅符合连接条件不符合查询条件的元组;
右外连接:是指返回右表中仅符合连接条件不符合查询条件的元组
全连接:是指左外连接和右外连接去掉重复项的元组集并集

15.索引的作用?它的有缺点是什么

当表的数据量比较大时,查询操作比较耗时,建立索引可以加快查询速度。

优点:加速查询速度;
缺点:索引需要占用一定的存储空间,且基本表更新时需要维护索引表

16.索引和键有什么区别

索引是对数据库表中一个或多个列(例如,employee 表的姓名 (name) 列)的值进行排序的结构
索引是存储在数据库中的一个物理结构,是实际存在的,相当于一本书的目录
键是一个逻辑概念,不是数据库中的物理部分。键分为主键和外键,主键相当于一本书每个页的页码

(扩展:聚簇索引:与基表的物理顺序相同,数据值的顺序总是按照顺序排列)

17.数据库中常用的索引有哪些

B+树索引:B+树是对B树优化处理了的多路搜索树,与B树的区别在于,B树的每个节点都可以存储数据,而B+树只有叶子节点可以存储数据,且每个叶子节点都用链表链接

在数据库的查询中一般都是批量查询数据,采用B+树一次查询多条时,确定首尾位置,便可以方便的确定多条数据位置
Hash索引:通过一定的算法计算出哈希值,然后映射出对应的数据存储位置。检索速度快,但是哈希值可能存在碰撞

18.视图是什么?有什么用

视图是从一个或几个表中导出来的表,是一个虚表。数据库中只存放视图的定义,而不存放视图对应的数据。基本表中的数据发生变化时,从视图中查询出来的数据也就随之变化。

作用:
能够简化用户的操作
使用户能以多种角度看待同一数据
在一定程度上提供了数据的逻辑独立性
能够对私密数据提供安全保护

19.关系,元组,域,键,笛卡儿积

Stu表
学号 姓名 性别 班级
201901 数数 男 11
201902 据据 男 12
201903 库库 女 13

关系: {学号,姓名,性别,班级}

元组: {201901 数数 男 11}

键(Key): {学号}和{姓名,性别}(假设没有同名且同性别)

         隐含键:  未被制定的键(还有一个名字替补键)
         候选键:  隐含键+主键
         超键:   如 学号,姓名 是一个超键

:(学号) = {20101,201902,201903}

笛卡尔积:

    名集D1=(数数,据据,库库)  班级集D2=(11,12,13)

    D1与D2的笛卡尔积为:
        D1 X D2 = { (数数,11),(数数,12),(数数,13),
                 (据据,11),(据据,12),(据据,13),
                (库库,11),(库库,12),(库库,13) }

20. 超码、候选码和主码

如 19那张表

主码:被数据库设计者选中的,用来在同一实体集中区分不同实体的候选码;此外,应该选择哪些从不或极少变化的属性;

超码:因为通过学号可以找到唯一一个学生,所以{学号}是一个超码,同理{学号,身份证号}、{学号,身份证号,姓名}、{学号,身份证号,姓名,性别}、{身份证号}、{身份证号,姓名}、{身份证号,姓名、性别}也是超码.

在这里,因为不同的学生可能拥有相同的姓名,所以姓名不可以区别一个学生,既{姓名}不是一个超码,{性别}、{姓名、性别}也不是。

虽然超码可以唯一标识一个实体,但是可能大多数超码中含有多余的属性。

候选码:如果任意超码的真子集不能包括超码,则称其为候选码;超码包括候选码

在上例中,只有{学号}、{身份证号}都是候选码;另外,如果性别和姓名可以唯一标识一个学生,则{姓名,性别}也为超码。

21.数据库的安全性是指什么?有哪些安全行技术?

数据库的安全性是指保护数据库以恶意破坏和非法存取
安全性技术:用户标识和鉴别、多层存取控制、审计、视图、数据加密

22.存取控制是指什么?主要包括哪两部分?有哪两类方法?

存取控制是指确保只授权给有资格的用户访问数据库的权限,且令所有未被授权的人员无法接近数据。

两个部分:定义用户权限和合法权限检查

两种方法:
自主存取控制(DAC):用户对不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限
强制存取控制(MAC):每一个数据库对象被标以一定的密级,每一个用户也被授予一定级别的许可证,只有具有合法许可证的用户才可以进行存取

23.视图机制是如何对数据库实现安全控制的

可以对不同的用户定义不同的视图,也就是,通过视图机制把要保密的数据对无权存取的用户隐藏起来

24.审计功能是如何对数据库实现安全性控制的?

审计功能是把用户对数据库的一系列操作自动记录到审计日志中,审计员可以利用审计日志监控数据库中的各种行为,找出导致数据库发生异常的事件

25.数据库的完整性是指什么?

数据库的完整性:防止数据库中存在不正确的数据

26.什么是断言?

断言是指更具有一般性的约束,断言创建后,任何涉及到断言中的关系的操作都会引发数据库对断言的检查,任何使断言为假的操作都会被拒绝执行

27.什么是触发器?触发器的作用?

触发器是用户定义在关系表上的一类由数据驱动的一类由事物驱动的特殊过程,类似于约束,但是比约束更灵活,是保证数据库完整性的一种方法。任何用户对表进行增删改操作都会有数据库服务器自动激活相应的触发器,对数据库进行相应的检查和操作

28.关于范式

第一范式:不可分割,属性都是单一分开的
第二范式:有主键,并且其他属性都是完全依赖于主键
第三范式:消除冗余,在表中的信息只存在一个地方,而不是多个地方,即不存在传递依赖。相当于非主键A依赖于非主键B

29.主键和外键

主键就是一个代表这个表的唯一属性,有且只有一个,并且不能为空,外键是存在于此表中,另一个表的主键

30.规范化过程中,逐级依次消除了何种函数依赖

由1NF到2NF,消除了非主属性对主属性的部分函数依赖
由2NF到3NF,消除了非主属性对主属性的传递函数依赖
由3NF到BCNF,消除了主属性对码的部分函数依赖和传递函数依赖

31.数据库设计的基本步骤是什么

需求分析:了解和分析用户需求
概念结构设计:对用户需求进行抽象和归纳,形成一个独立于DBMS的概念模型(E-R图)
逻辑结构设计:对概念结构进行转换为数据模型,通常为关系模型
物理结构设计:为逻辑数据模型选取一个最适合存储结构和存取方法
数据库实施阶段:编写数据库,编写和调试应用程序
数据库运行和维护:正式投入运行

32.概念模型有什么作用?

概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言

33.合并E-R图时注意包括哪几种冲突

属性冲突:不同的实体对同一属性的定义不同
命名冲突:同名异义、异名同义
结构冲突:同一实体在不同的局部E-R图中有不同的抽象。

34.一个实体型转换为一个关系模式有哪几种情况

一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并
一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并
一个m:n联系可以转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性

35.描述数据库对嵌入式SQL的处理过程

DBMS的预处理程序对源程序进行扫描,识别出嵌入式SQL语句,把他们转换成主语言调用语句,使得主语言编译程序可以识别他们,然后将他们编译成目标代码

36.什么是存储过程?用什么调用?

存储过程是个预编译得SQL语句集合,优点是可以建立非常复杂的查询,只需创建一次,在程序中即可多次调用,且比执行单纯的SQL语句要快,可以创建一个命令对象进行调用

37.游标是什么?

系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果

38.关系数据库中查询处理的步骤是什么?每一步进行简要概括

查询分析:对查询语句进行词法分析、语法分析(检查是否正确)
查询检查:对合法的查询语句进行语义检查(语义检查就是检查其是否存在有效)
查询优化:选择一个高效执行的查询处理策略
查询执行:依据优化得到的执行策略生成查询执行计划,并生成相应的查询执行计划代码

39.三条启发式优化规则包括哪几点

选择运算尽可能先做
投影操作尽可能先做
笛卡尔积和附近的一连串选择和投影操作合并起来做

40.事务是什么?ACID特性包括?

事务是数据库进行操作的一个基本单位

ACID特性包括:
隔离性:一个事务的执行不能被其他事务干扰
原子性:事务是一个不可分割的单位,要么全做,要么都不做
一致性:事务执行的结果必须使数据库从一个一致性状态变到另一个一致性状态
永久性:一旦事务被提交,他对数据库的改变就是永久的

41.为什么事务非正常结束时会影响数据库数据的正确性

事务具有一致性,事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成的事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态

42.数据库恢复的关键是什么?

关键是建立冗余数据

43.数据库恢复的基本技术有哪些

数据转储和登陆日志文件是数据库恢复的基本技术
数据转储是指DBA定期将数据库复制到其他介质上进行保存,这些备份的数据就叫做后备副本
登记日志文件日志文件是用来记录事务对数据库进行更新操作的文件
当系统运行过程中发生故障,利用转储的数据库后背副本和日志文件就可以将数据库恢复到故障前的某个一致性状态

44.登记文件时为什么必须先写日志文件,后写数据库

把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作。有可能在这两个操作之间发生故障,即这两个写操作只完成了一个
如果先写了数据库修改,而在运行记录中没有登记这个修改了。如果先写日志,但没有修改数据库,在恢复时并不会影响数据库的正确性。所以一定要先写日志文件,即首先把日志记录写到日志文件中,然后写数据库的修改

45.用于数据库恢复的文件是什么

日志文件、后备副本

46.数据库故障的种类有哪几种?相应的恢复策略是什么

三种:事务故障、系统故障、介质故障

事务故障是指事务在运行至终点前被中止
事务故障恢复是由系统自动完成,利用日志文件撤销此事务已对数据库进行的修改

系统故障是指造成系统停止运转的任何事件,使得系统要重新启动
系统故障的恢复是在重新启动后系统自动完成,为了防止系统故障造成的数据不一致,必须撤销故障时未完成的事物,重做已完成的事务

介质故障是指磁盘上的物理数据和日志文件被破坏
介质故障的恢复方法就是重装数据库,重做已经完成的事物

47.在数据库中为什么要并发控制

数据库是共享资源,通常有多个事务在同时执行,当多个事务并发的存取数据库时就会存在同时读或写统一数据的情况,如果对并发操作不加以控制,就会存在数据读取或存取错误,破坏数据库的一致性

48.并发造成的数据不一致性包括什么

丢失修改:A、B两个事物同时对一个数据进行操作,A的修改破坏了B的修改,导致B的修改丢失
不可重复读:A读取了数据后,B对数据进行了修改,导致A无法再现前一次的读取结果
读脏数据:A对数据进行了修改后,B读入该数据,然后A又因为某一原因撤销了该修改,导致数据恢复原值,此时B读取的数据就成了脏数据

49.什么是锁?有哪两种锁

锁是最常用的并发控制机制,是防止其他事物访问指定资源,实现并发控制的一种手段

排他锁:当数据被加上写锁,其他事务不能对该数据进行读和写
共享锁:当数据被加上读锁,允许其他事务对该数据进行读,不允许写

50.简要概述一、二、三级封锁协议

一级封锁协议:事务在修改数据之前加上写锁,直到事务结束才释放。该协议可以防止丢失修改
二级封锁协议:在一级协议的基础上,加上了事务在读取数据之前对其加读锁,读完后即可释放读锁。该协议避免了读脏数据
三级封锁协议:在一级协议的基础上,加上了事务在读取数据之前必须加上读锁,直到事务结束才释放。该协议解决了不可重复读问题

51.数据库保护(访问)的内容有哪些

利用权限机制;利用完整性约束防止数据进入数据库;提供故障恢复能力,提供并发访问控制。