DBMS的组成部分
一、查询:sql输入或通过应用程序的借口查询数据库
二、更新:插入、修改、删除。
三、模式更新:修改或增加属性字段,数据库的模式指数据库的逻辑结构。
四、查询处理程序:把用较高级的语言所表示的数据库操作转换成一系列数据库的请求
五、存储管理程序:包括文件管理程序和缓冲区管理程序。
六、事务管理程序:一组按顺序执行的操作单位,由一个或多个数据库操作组成。
特性:
原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。
实现事务的技术:
(1)加锁:对事务要访问的数据项加锁,一个事务对某数据项加锁后,其他的事务就不能访问它了,直到数据项解锁为止。避免多个事务同时读写数据库中的同一数据项。
(2)日志文件:事务管理程序记录了一个日志文件,包括每个事务的开始,每个事务所引起的数据库的更新和每个事务的结束。是保证持久性的重要手段。
(3)事务提交:首先计算岁数据库要做的更新,将更新内容复制到日志文件,然后提交,将更新的内容写入数据库。