oracle027
事务:
一个事物的结束意味着另外一个事务可以开始
第一条DML语句的执行说明事务开始了
在没有提交之前,始终还是属于一个事务
session在一次死掉了,是不可能再重现的
执行DDL的时候,会对前面所做的事务进行提交,和自身事务提交
做的任何DML语句都要显示的提交
select a.sid,serial# from v$session a ,v$mystat b where a.sid = b.sid;
1、事务的基本概念
一组DML语句 insert、delete、update
COMMIT;
ROLLBACK;
SAVEPOINT <savepoint_name>
ROLLBACK TO [SAVEPOINT] <savepoint_name>
2、隐式提交和回滚
DDL
退出
异常退出
正常退出
3、事务的含义
1、原子性(Atomicity)
事务的原子性是指事务中包含的所有操作要么都做,要么都不做,保证数据库是一致的。
例如:A帐户向B帐户划账1000,则先将A减少1000,再将B增加1000,这两个动作要么都提交,要么都回退,不可能发生一个有效、 一个无效的情况。
2、一致性(Consistency)
一致性是指数据库在事务操作前和事务处理后,其中的数据必须都满足业务规则约束。
例如:A、B帐户的总金额在转账前和转帐后必须一致,其中的不一致必须是短暂的,在事务提交前才会出现的。
再如:约定B帐户不能多于1000元,则A转出1000成功,B转入1000失败,最终由原子性得到——整个事务回滚
3、隔离性(Isolation)
隔离性是数据库允许多个并发事务同时对数据进行读写和修改的能力,隔离性可以防止多个事务并发执行时由于交叉执行而导致数据的不 一致。
例如:在A、B之间转帐时,C同时向A转帐,若同时进行则A、B之间的一致性不能得到满足。所以在A、B事务执行过程中,其他事务 不能访问(修改)当前相关的数值。
4、持久性(Durability)
持久性表示为:事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。
在提交之前如果系统故障,则所有信息全部丢失。提交之后数据存放在磁盘中,是永久性的。
4、事务的隔离级别
alter user hr account unlock identified by hr;
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;//开启一个事务,在事务的整个生命周期中,所访问的数据信息和在开始开启事务时刻的数据信息是一样的(不包括自己修改的)
commit;
SET TRANSACTION ISOLATION LEVEL READ COMMITED//在事务提交前,其他事务是改变不了和查询不出被修改的信息(默认的)
SET TRANSACTION READ ONLY //只读,不能DML
SET TRANSACTION READ WRITE //不可读,只DML
select xidusn,ubablk,ubafil from v$transaction;
|
分享到:
相关推荐
介绍在oracle中如何使用事务,有例子,很详细
Oracle中事务处理 –事务隔离级别 oracle的事务隔离级别 ORACLE提供了SQL92标准中的read committed和serializable,同时提供了非SQL92标准的read-only ◆ oracle的 read committed 说明: ①这是ORACLE缺省的...
Oracle事务与锁定Oracle事务与锁定Oracle事务与锁定
oracle 事务 回滚 存储过程 自用
java 代码写的关于Oracle的 事务处理
Oracle自治事务的介绍(Autonomous_Transactions)PRAGMA_AUTONOMOUS_TRANSACTION
8.oracle 中事务处理 9.oracle 的函数 10.数据库管理,表的逻辑备份与恢复 11.数据字典和动态性能视图 12.数据库管理 -- 管理表空间和数据文件 13.约束 14.Oracle 索引、权限 15.角色 16.PL/SQL 块的结构和实例 ...
Oracle中关于事务槽(ITL)
主要针对oracle事务槽讲解。一本很经典的电子书。分享给大家
介绍了在 .NET 程序中使用数据库事务。如何创建 OracleTransaction 对象并用它们将事务提交给数据库,如何使用保存点部分回滚一个事务,以及 Oracle 数据库如何分离并发事务。同时分别提供了vb.net和c#两种开发工具...
在本文中,您将了解到如何在 Visual Basic .NET (VB.NET)和 Visual C# .NET(C#)中使用数据库事务。具体来讲,您将系统学习数据库事务、在 .NET 程序中使用 OracleTransaction 对象以及如何设置事务保存点。
oracle事务处理,oracle基础使用,oracle
oracle 在java中的事务处理和异常回滚。 里面的类直接运行,需要把oracle的数据库连接改改就ok、
Oracle学习笔记(事务知识点),事务处理:所谓的事务处理其实就是保证数据操作的完整性,所有的操作要么同时成功,要么同时失败
ORACLE体系结构、并发与多版本,事务机制、Sql优化基本方法介绍
Oracle事务、锁表查询及相关实用查询SQL语句
详细的关于Oracles事务的实验,学习后,应该对oracle事务非常清楚。
要创建一个自治事务,您必须在匿名块的最高层或者存储过程、函数、数据包或触发的定义部分中,使用PL/SQL中的PRAGMA AUTONOMOUS_TRANSACTION语句。在这样的模块或过程中执行的SQL Server语句都是自治的。
1.通过ODBC使C#能够对MySQL数据进行访问,并可以...2.通过ODBC使C#能够对Oracle数据进行访问,并可以进行事务处理。 3.文档里面包含了环境配置,软件安装的全过程。最后包含了可执行的数据库连接共同的C#代码提供参考。