12306数据怎样数据隔离级别别

数据库的数据隔离级别别有四种  汾别为:read uncommitted(读未提交)、read committed(读已提交)、repeatable read(重复读)、serializable(序列化)而多用户同时访问数据库会产生的并发问题有:脏读、不可重复读和幻读。很显然修改数据库的数据隔离级别别可以有防止相关的并发问题。

脏读:意味着一个数据读取了另外一个事务未提交的数据而這个事务正好回滚了。显然read committed(读已提交)可有效地防止此并发问题。

不可重复读:意味着一个事务两次查询某一数据时得到两个不同的結果原因是在第一次查询之后,另一事务将此数据修改了repeatable read(重复读)可防止此并发问题。

幻读:例如一个事务修改了数据表中所有行然后另一事务向这个表中插入一条数据,而第一个数据再次查看的时候发现有一条数据没有被修改好像出现了幻觉。serizliable(序列化)可以防止此并发问题事实上,序列化可以防止以上三种并发问题但是此数据隔离级别别的数据库的效率就相当低了。

我要回帖

更多关于 数据隔离级别 的文章

 

随机推荐