oracle学习篇六:更新操作事务处理

Posted 陈小兵

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle学习篇六:更新操作事务处理相关的知识,希望对你有一定的参考价值。


----------------1.数据库更新操作-----------------------------

select * from tab;--查询表

drop table siebel_user;--删除表

--copy一份表结构
create table myemp as select * from emp;

select * from myemp;

--插入记录
insert into myemp(empno,ename,job,hiredate,sal,comm,deptno)
values(124,‘王五‘,‘清洁工‘,to_date(‘2016/06/22‘,‘yyyy/mm/dd‘),1000.00,500.00,10)

--更新记录
update myemp set hiredate=to_date(‘2015-09-12‘,‘yyyy-mm-dd‘) where ename=‘张三‘;

--删除记录
delete from myemp where empno=123;


-------------------2.事务处理---------------------


drop table myemp;--删除表

create table myemp as select * from emp where deptno=10;--重新复制一份表结构

select * from myemp;

delete from myemp where empno=7934;--删除记录
update myemp set comm=1000 where empno=7782;

rollback;--回滚删除、更新的记录

commit;--提交,(促使数据库删除、更新立刻生效)

 备注说明:  

从当前窗口发现,此数据已经删除了,但是打开第二个窗口,查询会发现删除的记录还存在,
证明没有删除,这就是oracle数据库中的事物处理概念:

事物处理:所谓事物处理,就是保证数据操作的完整性,所以操作要么同时成果,要么同时失败,

在oracle中,对每一个连接到数据库的用户都会建立一个session。一个session 对数据库的修改、删除;不会立刻反映到数据库的真实数据之上,是允许回滚rollback,
只有当session在提交commit所有操作之后,书库再回做出真正的修改。

提交事务:commit; (如果数据已经被提交了,则肯定无法回滚)
回滚事务:rollback

死锁: 一个session如果更新了数据库中某条记录,而其他siession的用户是无法离开更新的,要等待对方提交完成,才能进行更新。

 

以上是关于oracle学习篇六:更新操作事务处理的主要内容,如果未能解决你的问题,请参考以下文章

Oracle-事务处理

Oracle数据更新事务处理数据伪列

Oracle中事务的处理,比如要对表A操作,我先查询在更新,是不是需要将查询放在事务,求高手解答!

事务隔离级别,为什么SQLSERVER 容易锁表

oracle 事务 数据伪列

Oracle学习 第12天