oracle的事务是以session开始登录后的第一条DML语句开始的,然后以DDL(drop,create,alter,rename等),TCL的rollback,commit,DCL(grant,revoke)结束.
当然你也可以手动设置事务属性,如只读事务或者顺序事务:
set transaction read only
set transaction isolation level SERIALIZABLE
登陆sqlplus,执行如下操作:
set serverout on;
begin
commit;
dbms_output.PUT_LINE('语句执行成功');
exception
when others then
rollback;
dbms_output.PUT_LINE('语句执行失败');
end;
/
以oracle自带的scott为例:
①.、select
as
mgrname,d.dname
from
scott.emp
t1,scott.emp
d
where
and
d.*
scott.dept
d,(select
rownum
n,
tt.*
(select
count(*)
c,deptno
group
by
deptno
order
c
desc)
tt)t
t.n=1
t.deptno=d.deptno
*
from(select
t.*,dense_rank()over
(partition
sal)
r
t
t.*,rank()over
n
''
n,tt.*
tt)
t)
between
事务是为了实现数据的一致性和并发处理,你对数据进行定义和修改时就会产生事务.
例如你执行update语句,这时事务就开始了,执行commit会提交事务,而rollback会回滚(撤销)事务.如果你什么也不做,那么正常退出程序时会自动提交,而程序异常中止则会回滚事务.
以上就是土嘎嘎小编为大家整理的oracle如何写事务相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!