整理来源于网络,若有侵权请告知。数据库
一、什么是数据库事务网络
数据库事务是构成单一逻辑工做单元的操做集合。数据库事务能够包括一个或多个数据库操做,可是这些操做构成一个逻辑上的总体。并发
二、数据库事务的四个特性(ACID)ide
A:原子性,事务中的全部操做做为一个总体不可分割,要么所有操做要么所有不操做。索引
C:一致性,事务的执行结果必须使数据库从一个一致性状态转为另外一个一致性状态。一致性状态:1.系统状态知足数据库的完整性约束,2.系统的状态反映数据库所描述的现实世界的真实状态。事务
I:隔离性:并发执行的事务不会相互影响,其对数据库的影响和他们串行执行时同样。资源
D:持久性:事务一旦提交,对数据库的影响就是持久的。任何事务或系统故障都不会致使数据丢失。it
三、什么是数据库链接泄露io
数据库链接泄露指的是若是在某次使用或者某段程序中没有正确地关闭Connection、Statement和ResultSet资源,那么每次执行都会留下一些没有关闭的链接,这些链接失去了引用而不能获得从新使用,所以就形成了数据库链接的泄漏。数据库链接的资源是宝贵并且是有限的,若是在某段使用频率很高的代码中出现这种泄漏,那么数据库链接资源将被耗尽,影响系统的正常运转。class
四、汇集索引
数据行的物理顺序与列值的顺序相同,若是咱们查询id比较靠后的数据,那么这行数据的地址在磁盘中的物理地址也会比较靠后。并且因为物理排列方式与汇集索引的顺序相同,因此也就只能创建一个汇集索引了。
五、主键与外键
关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能惟一标识一条记录,该属性组就能够成为一个主键。
外键用于与另外一张表的关联。是能肯定另外一张表记录的字段,用于保持数据的一致性。好比,A表中的一个字段,是B表的主键,那他就能够是A表的外键。
五、并发异常
脏写:事务回滚了其余事务对数据库的已提交修改。
丢失更新:事务覆盖了其余事务对数据库的已提交修改。
脏读:事务读取了其余事务的未提交的数据。
不可重复读:一个事务对同一数据的读取先后不一致。注:脏读读的是其余事务未提交的数据,不可重复读读的是事务已提交的数据,可是数据被其余事务修改过致使先后读取结果不一致。
幻读:事务读取某个范围的数据时,由于其余事务的操做致使先后读取结果不一致,在一个事务里面的操做中发现了未被操做的数据。注:不可重复读针对的是肯定的一行数据,幻读针对的是不肯定的多行数据,幻读常出如今带有查询条件的范围查询中。
六、事务的隔离级别
从低到高是读未提交、读已提交、可重复读、串行化。隔离级别越低,可能出现的并发异常越多,可是并发能力越强。