一.事务特性:
1.原子性:要么同时成功,要么同时失败;
2.一致性:(例子)A查询了一条数据,B也查询了数据并要对数据进行修改,A从查询到接收到值需要用很长时间,此时虽然B将值改变了,但是返回给A的数据还是最初查询时的数据;
3.隔离柱:两个session各做各得,互不影响,除非其中一个提交。
4.持久性:事务一旦提交完成后,数据就永远的保存下来。
二.锁
例子:
select * from emp where empno=2222 for update
此语句代表查询时增加锁机制,其他操作此数据只能等待;
1.下面语句为查询当前被锁的数据信息:
SELECT
s.sid,
s.serial#
FROM
vsession s
WHERE
ao.object_id = lo.object_id
AND lo.session_id = s.sid;
2.查询锁的信息
select * from v$lock;
3.kill掉会话:
ALTER system KILL session 'SID,serial#'
kill掉session之后,就可以继续对该条数据的操作了。
4.oracle数据库是不存在死锁情况的。