数据库原理及应用期末复习小结

数据库(DataBase):相互之间有关系若干的表(Table)的集合
数据库管理系统(DBMS):Database Management System,主要是指MySQL、SQL server等一系列数据库管理软件。
数据库系统由数据库(DB)、数据库管理系统(DBMS)、数据库应用软件(DBAP)、数据库管理员(DBA)、计算机基本系统五部分构成。

三级模式(三级视图)
外模式(external schema):某一用户能够看到与处理的数据的结构性描述。
概念模式(conceptual schema):从全局角度理解/管理的数据的结构描述,含相应的关联约束。体现在数据之间多内在本质联系。
内模式(internal schema):存储在介质上的数据的结构描述,含存储路径、存储方式、索引方式等。

模式:对数据库中数据所进行的一种结构性的描述,是所观察到数据的结构信息。
数据模型:规定模式统一描述方式的模型,包括:数据结构、操作和约束
数据模型是对模式本身结构的抽象。
模式是对数据本身结构形式的抽象。

关系模型:是从表(Table)及表的处理方式中抽象出来的,是在对传统表及操作进行数学化严格定义基础上,引入集合理论与逻辑学理论提出的。
形象地说,一个关系(relation)就是一个Table
关系模型就是处理Table的,它由三个部分组成:
描述DB各种数据的基本结构形式
描述Table与Table之间所可能发生的各种操作(关系运算)
描述这些操作所应遵循的约束条件(完整性约束)

关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键
关系R中的一个属性组,它不是R的候选码,但它与另一个关系S的候选码相对应,则称这个属性组为R的外码或外键
关系模式通常可以简记为:R(A1, A2, …, An)。其中R为关系名,A1, A2, …, An为属性名。而域名及属性向域的映象常常直接说明为属性的类型、长度。

NOT null //列值非空
constraint constraintname //为约束命名,便于以后撤销
UNIQUE //列值唯一
Primary Key //列为主键
Check //列值满足条件 条件只能使用列当前值
References tablename(colname)//引用另一个表的值,括号表示是如果列名不同要写明列名。这个表的外键是另一个表的主键。
ON DELETE{CASCADE|SET NULL }//当被引用表的该列的某个值被删除,则对应表的这个值得元组也被删除。

函数依赖:设R(U)是属性U = {A1,A2…An}上的一个关系模式,X,Y是U上的两个子集,若对R(U)的任意一个可能的关系r,r中不可能有两个元祖满足在X中的属性值相等而在Y中的属性值不等,则称X函数决定Y或Y函数依赖于X,记作X->Y
部分或完全函数依赖:在R(U)中,若X->Y并且对于X的任何真子集X’都有X’-/>Y,则称Y完全函数依赖于X,记为X-f>Y,否则称Y部分函数依赖于X,记为X-p>Y
部分依赖存在非受控冗余,需要消除
传递函数依赖
在R(U)中,若X->Y,Y->Z且Y不属于X,Z不属于Y,Z不属于X,Y不依赖于X,则称Z传递函数依赖于X。
传递依赖也存在着非受控冗余

1NF的定义为:符合1NF的关系中的每个属性都不可再分
2NF的定义为:消除了非主属性对于码的部分函数依赖
3NF的定义为:消除了非主属性对于码的传递函数依赖
BCNF范式:属于1NF同时不存在不依赖于候选键的其他函数依赖。

事务的四个特性:ACID特性
原子性(Atomicity):操作这些指令时,要么全部执行成功,要么全部不执行。只要其中一个指令执行失败,所有的指令都执行失败,数据进行回滚,回到执行指令前的数据状态。
一致性(Consistency):事务的执行使数据从一个状态转换为另一个状态,但是对于整个数据的完整性保持稳定。
隔离性(Isolation):隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。
持久性(Durability):当事务正确完成后,它对于数据的改变是永久性的。

数据库故障类型:
事务故障:某一程序(事务)本身运行错误所引起的故障影响该程序(事务)本身
事务故障恢复:事务故障可通过重做事务(Redo)和撤销事务(Undo)来恢复。重做事务可保证已提交事务的持久性,而撤销事务则消除未提交事务的影响

系统故障:由于掉电、非正常关机所引起的故障造成数据库缓冲区和磁盘上数据库的不一致性
系统故障恢复:运行日志是DBMS维护的一个文件,该文件以流水的方式记录了每一个事务对数据库的每一次操作及操作顺序系统故障可通过运行日志来恢复按照运行日志记录的事务操作顺序重做事务或撤销事务
检查点之后结束或发生的事务需要依据运行日志进行恢复,故障点前结束的重做,故障点时刻未结束的撤销

介质故障;由于介质损坏所引起的故障影响是全面的,既影响内存中的数据,又影响介质中存储的数据
介质故障恢复:在某一时刻,对数据库在其他介质存储上产生的另一份等同记录
用副本替换被损坏的数据库用副本恢复后还需要依据运行日志进行恢复
(运行日志必须涵盖到转储点之前一段的数据,避免衔接不畅)

超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键
候选键(candidate key):不含有多余属性的超键称为候选键
主键(primary key):用户选作元组标识的一个候选键程序主键

事务中的操作归根结底就是读或写。两个事务之间的相互干扰就是其操作彼此冲突。因此,事务间的相互干扰问题可归纳为写-写、读-写和写-读三种冲突(读-读不冲突),分别称为“丢失更新”、“不可重读”、“读脏数据”问题。

一级封锁协议内容:事务T在修改数据对象之前必须对其加X锁,直至事务结束。
一级封锁协议解决了数据丢失更新问题。但不能防止读脏数据和不可重复读的情况。

二级封锁协议内容:在一级封锁协议的基础上,另外加上事务T在读取数据对象R之前必须先对其加S锁,读完后释放S锁。
二级封锁协议不但可以解决数据丢失更新问题,还可以进一步防止读脏数据。但二级封锁协议在读取数据之后,立即释放S锁,所以它仍然不能解决不可重复读的问题。

三级封锁协议内容:在一级封锁协议的基础上,另外加上事务T在读取数据R之前必须先对其加S锁,读完后并不释放S锁,而直至事务T结束才释放。
所以三级封锁协议除了可以防止丢失更新和读脏数据外,还可进一步防止不可重复读,彻底解决了并发操作所带来的3个不一致性问题。

基本锁
(1)排它锁(X锁)
排它锁又称为写锁。
(2)共享锁(S锁)
共享锁又称为读锁。
排他锁比共享锁更“强”,因为共享锁只禁止其它事务写操作,而排他锁既禁止其它事务的写又禁止读。

  • 2
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据库原理是指数据库的设计、组织和管理的基本原理。它涉及到数据的存储、检索、更新和保护等方面。数据库原理包括数据模型、数据结构、数据操作和事务管理等内容。 数据库应用是指将数据库原理应用到实际的业务场景中。数据库应用可以用于各种领域,例如企业管理、电子商务、金融服务等。通过数据库应用,我们可以高效地管理和处理大量的数据,提供准确和可靠的数据支持。 在期末考试中,数据库原理应用的考题通常涉及以下内容: 1. 数据库基本概念:了解数据库、数据模型、数据模式、数据库系统等基本概念。 2. 数据库设计:了解关系数据库的设计过程,包括实体-关系模型、关系模式设计和规范化等。 3. 数据库查询语言:了解SQL语言的基本语法,能够编写简单的查询语句。 4. 数据库索引和优化:了解索引的作用和使用,以及如何进行性能优化。 5. 事务管理:了解事务的特性和ACID原则,以及并发控制和恢复机制。 6. 数据库安全性和完整性:了解数据库的安全性和完整性保护措施,如用户权限管理和数据备份等。 在备考期末考试时,建议你理解数据库原理的基本概念和关键内容,并通过练习和实践来加深对数据库应用的理解和掌握。同时,可以参考教材、课堂讲义和相关的学习资源,进行系统的复习

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值