oracle数据库高级基础

事务的四大特性:
                      1.原子性
                            一个事物是不可分割的数据库逻辑工作单位
                      2.一致性
                            事物完成时,必须使所有的数据都保持一致的状态
                      3.隔离性
                            一个事物的执行不能被其它并发执行的事物干扰
                      4.持久性
                             事物一旦改变,它对数据库的改变是永久性的




脏读:
           指的是一个事物在访问数据的同时对数据进行了修改,但是没提交结果,也就是没有commit一下,那么,另一个事物再次访问时,读取到了修改之前的信息,而修改之前的信息是不需要了的信息


不可重复读:
           指的是在一个事物内多次读取同一数据,但是在事物某次再次要读取相同的数据时,另一事物对数据进行了修改,那么,此次读到的数据将于之前的不同,这就是不可重复读


幻读:
          幻读是指当事物不是独立执行时发生的现象。当一个事物对表中的数据进行了修改,修改的数据涉及到表中全部数据行,同时,第二个事物又进行了一次修改,那么以后第一个事物的用户再次操作,由于有的数据没改,就会像发生了幻觉一样。


解决的方法:
         针对脏读和不可重复读,可已采取(1)在读时,给数据加上共享锁,只能大家一起读,但是不能修改,(2)在修改时,给数据加上排他锁,只有该事物对该数据类型对象进行操作,而其它的事物不能。针对幻读,给数据设置为只读就可以了。


锁的分类:
        共享锁(s锁):
                一个事物对数据对象建立了共享锁,则该事物可以对数据对象进行读操作,但不能进行修改,而其他的事物只能对概数据对象加s锁,但不能加x锁。即其它数据也只能进行只读操作
        排他锁(x锁):
                一个事物对某个数据对象建立了排他锁,那么只有该数据对象进行DML操作,而其他事物则不能,也不允许其它事物对对象家任何类型的锁。




DDL:数据定义语言(表的创建删除)


DCL:数据控制语言(用于定义数据库用户的权限)


DML:数据操作语言(数据增删查改均属于)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值