Oracle事物处理】的更多相关文章

要想解释oracle事物的工作流程,首先先解释几个小概念:       1.undo段的组成:段头.回滚块       2.事物ID:每一个事物都有一个自己的事物ID,就像身份证号一样. 在v$transaction数据字典中xid就是事物ID,xid既是一个编号,也是一个地址,xid中内容的有 1.使用哪个回滚段的段头块: 2.一个undo段最多同时能有47个活动事物,一个undo段只有一个事物表,47个事物的情况都在事物表中 ,一个事物占用一行,此次事物使用47中的哪一行: 3.该行被覆盖的…
n  什么是事物 事物是把对数据库的一系列操作(dml)看做一个整体 事物用于保证数据的一致性,它由一组相关的dml语句组成,改组的dml语句要么全部成功,要么全部失败. 如:网上转账就是典型的要用事物来处理,用以保证数据的统一性. n  事物和锁 当执行事物操作时(dml语句),oracle会被作用的表上加锁,防止其它用户改变表的结构,这里对我们用户来讲是非常重要的. n  提交事物 当执行使用commit语句可以提交事物,当执行了commit语句后,会确认事物的变化.结束事物.删除保存点.释…
关于Oracle事务的总结 1.什么是事务,事务的特性是什么? 事务的任务便是使数据库从一种状态变换成为另一种状态,这不同于文件系统,它是数据库所特用的.它的特性有四个:TOM总结为ACID即原子性atomicity:语句级原子性,过程级原子性,事务级原子性一致性consistency:状态一致,同一事务中不会有两种状态隔离性isolation:事务间是互相分离的互不影响(这里可能也有自治事务)持久性durability:事务提交了,那么状态就是永久的 对于语句级原子性,过程级原子性和事务级原子…
事务 1 事务定义 数据库事务是SQL语句的组合作为一个"工作单元".要么全部完成,要么全部不做. 每个事务都有一个开始和一个结束. 2 事务开始 1. 你连接到数据库并执行DML语句(INSERT, UPDATE,或 DELETE). 2. 前一个事务结束 并且你输入了一个DML语句. 3 事务的结束 1. 你执行了 COMMIT 或 ROLLBACK命令. 2. 你执行了一个DDL语句, 例如CREATE TABLE语句,这种情况下,自动执行COMMIT .你执行了一个DCL语句,…
对于 对数据库中的数据做dml操作时,能够回滚,这一事物是很重要的 下面例子是对数据库中数据进行修改 package com.demo.oracle; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; /** * 在Java中使用Oracle事物. * 转账:一个账户减少十块钱,另一个账户上增加十块钱 * @auth…
1.Oracle认证,与其它数据库比较,安装 Oracle安装会自动的生成sys用户和system用户: (1)sys用户是超级用户,具有最高权限,具有sysdba角色,有create database的权限,该用户默认的密码是change_on_install (2)system用户是管理操作员,权限也很大.具有sysoper角色,没有create database的权限,默认的密码是manager (3)一般讲,对数据库维护,使用system用户登录就可以拉 也就是说sys和system这两…
oracle 事物控制包括 COMMINT ROLLBACK SAVEPOINT avepoint是事务内部允许部分rollback的标志符.因为事务中对记录做了修改,我们可以在事务中创建savepoint来标识不同的点.如果遇到错误,就可以rollback到不同的点或直接回来事务最开始的点. SAVEPOINT和ROLLBACK TO SAVEPOINT语法: SAVEPOINT identifier ROLLBACK [WORK] TO SAVEPOINT identifier RELEAS…
韩顺平Oracle笔记 分类: DataBase2011-09-07 10:24 3009人阅读 评论(0) 收藏 举报 oracle数据库sqljdbcsystemstring   目录(?)[-] Oracle认证和安装与其他数据库比较 Oracle的基本使用--基本命令 oracle用户管理 oracle表的管理数据类型表创建删除数据 CRUD操作 oracle表查询1 oracle表查询2 java操作oracle oracle中事务处理 oracle的函数 数据库管理表的逻辑备份与恢复…
1:合适的建立索引,数据量比较大的时候,如果频繁的进行修改插入则不建议建立索引! 2:什么时候适合建索引,在什么字段上面建立索引? (被当做查询条件的) 3:什么叫做编译错误,什么叫做运行时异常 能被捕获的叫做编译错误,不能被不活动 被称为运行时异常! 4:尽量给表建别名,列采用,别名.列名形式来查询出来,效率高! 5:避免使用*号 6:使用数据库函数的优点是:执行效率快,缺点是:移植性差! 7:用exists代替in,not exists 代替 not  in 8:oracle事物隔离级别 (…
-- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了. --(默认全局数据库名orcl) 1.select ename, sal * 12 from emp; --计算年薪 2.select 2*3 from dual; --计算一个比较纯的数据用dual表 3.select sysdate from dual; -…
首先,以超级管理员的身份登录oracle       sqlplus sys/bjsxt as sysdba   --然后,解除对scott用户的锁       alter user scott account unlock;   --那么这个用户名就能使用了.   --(默认全局数据库名orcl)       1.select ename, sal * 12 from emp; --计算年薪   2.select 2*3 from dual;  --计算一个比较纯的数据用dual表  3.se…
ORACLE 自治事物 一.问题 (1)现象   一个表A,存在一个触发器,该触发器用来统计表A的数量,并将结果更新到B表.此时,java代码里面调用insert into select 语句,会发生ora-04091错误. (2)分析 Java调用insert into A select from A语句,对于表A来说,同时查询和插入,这个时候,如果A有插入触发器,并统计A表的数量,就存在问题,因为有java事物和触发器事物两个事物存在,就会报错.这时,需要使用到自治事物. 二.ORACLE自…
触发器:自动执行,可以实现表的约束. 1.行级触发器: CREATE OR REPLACE TRIGGER del_deptid AFTER DELETE ON deptment --触发器条件 DELETE动作 FOR EACH ROW --循环每一行都改 BEGIN DELETE FROM emp WHERE id=:old.id; --触发后动作 END del_deptid; --END;都行 / '; --触发触发器 CREATE OR REPLACE TRIGGER insert_d…
Oracle数据库中的事务处理:添加,修改,删除时需要使用事务处理(显示事务). 1.事务的分类显示事务(添加,修改,删除)和隐式事务(除了添加,修改,删除). 2.事务的执行方式:自动提交(jdbc)或手动提交. 在添加,修改,删除时,是否需要编写commit; 3.事务的应用:当一个操作对应多条添加,修改,删除语句时,需要通过事务处理,来维护数据的一致性. 事务的提交和事物的回滚. --实现银行转账的效果,commit表示事物执行,更新到数据库 update JSB_TEST set Mon…
事物在Oracle中的4种状态: commit--提交 rollback--全部回滚 savepoint name;--定义一个回滚到这里的点:例如:savepoint a; rollback to [savepoint]name--回滚到指定的点 例如 rollback to a;就回滚到a这个地方 例子: --------------------------------------------例子1: --第一步:复制一个emp的新表[cemp]包括数据 ;//一共14行 create ta…
n  事物隔离级别 概念:隔离级别定义了事物与事物之间的隔离程度. ANSI/ISO SQL92标准定义了一些数据库操作的隔离级别(这是国际标准化组织定义的一个标准而已,不同的数据库在实现时有所不同): 隔离级别 脏读 不可重复读 幻读 读未提交(Read uncommitted) √ √ √ 读已提交(Read committed) × √ √ 可重复读(Repeatable read) × × √ 可串行化(Serializable) × × ×                       …
一 数值函数 数值 abs,ceil,floor,round,trunc字符串 instr,substr SQL>SELECT 'ABS':'|| ABS(-12.3) FROM DUAL; 运行结果: ABS:12.3 SQL>SELECT 'CEIL'||CELI(5.3) FROM DUAL; SQL>SELECT 'CEIL'||CELI(-5.3) FROM DUAL; SQL>SELECT 'CEIL'||CELI(5) FROM DUAL; 运行结果: CEIL:6…
/*未加工物料*/ update inv.mtl_material_transactions_temp set process_flag='Y', LOCK_FLAG='N', TRANSACTION_MODE='3', ERROR_CODE=NULL; commit; 然后在应用库存待定事物处理,选择提交 select process_flag, lock_flag, transaction_mode, error_code from  inv.mtl_material_transaction…
一.Sql函数 1.数值函数(输入参数和返回值都是数值型,多数函数精确到38位) --多少次方 ,) from dual; --开方 ) from dual; --绝对值 ) from dual; --向上取值 select ceil(5.3)from dual; --向下取值 select floor (5.3)from dual; --四舍五入 ) from dual; --截取 select trunc (152.3365) from dual; --判断正负 ) from dual; 2…
SET TRANSACTION NAME 'Update salaries'; SAVEPOINT before_salary_update; UPDATE employees SET salary=9100 WHERE employee_id=1234 # DML ROLLBACK TO SAVEPOINT before_salary_update; UPDATE employees SET salary=9200 WHERE employee_id=1234 # DML COMMIT COM…
一.SQL函数 1.分类:单行函数(日期.数值.转换.字符等),多行函数,也称为分组函数(max.min.avg.sum.row_number.rank等). 2.数值函数 abs(n):求数字n的绝对值 ceil(n):返回大于等于数字n的最小整数 floor(n):返回小于等于数字n的最大整数 round(n,[m]):执行四舍五入运算.如果省略m或为0,则四舍五入至整数位,如果m是负数,则四舍五入到小数点前m位,如果m是正数,则四舍五入至小数点后m位. trunc(n,[m]):截取数字.…
一 使用规则 : 在begin 之前申明  : PRAGMA AUTONOMOUS_TRANSACTION; 二 使用理解:autonomous transaction 是一个独立的事务,这一点是理解autonomous transaction 的关键,虽然受main transaction 的调用.下面用一个例子来加深理解. 创建一个测试表,往其中插入两条记录,不提交,接着声明一个自治事务,在其中继续 往表中插入记录,并且在自治事务对插入的记录进行提交.我们从输出中可以知道main trans…
!= 不等于 select empno,ename,job from scott.emp where job!='manager' ^= 不等于 select empno,ename,job from scott.emp where job^='manager' <>不等于 select empno,ename,job from scott.emp where job<>'manager' <小于 select sal from scott.emp where sal<…
首先再次明确下,数据库因为要同时保证数据的并发性和一致性,所以操作有锁等待是正常的. 只有那些长时间没有提交或回滚的事物,阻塞了其他业务正常操作,才是需要去定位处理的. 1.单实例环境 2.RAC环境 1. 单实例环境 实验环境:Oracle 10.2.0.5 单实例 会话1模拟业务操作: SQL> select sid from v$mystat where rownum=1; SID ---------- 144 SQL> show user USER is "JINGYU&qu…
在ORACLE数据库当中,有时候会使用ALTER SYSTEM KILL SESSION 'sid,serial#'杀掉一个会话进程,但是使用这个SQL语句杀掉会话后,数据库并不会立即释放掉相关的资源,有时候你会发现锁定的资源很长时间也不会释放,即使会话状态为"KILLED",依然会阻塞其它会话. 下面根据Eygel的"Oracle中Kill session的研究",构造一个案例看看kill session到底做了什么.如下所示 会话1: SQL> conn…
RAC 工作原理和相关组件(三) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总.然后形成体系的总结,一则进行回顾复习,另则便于查询使用.本图文文档亦源于此.阅读Oracle RAC安装与使用教程前,笔者先对这篇文章整体构思和形成进行梳理.由于阅读者知识储备层次不同,我将从Oracle RAC安装前的准备与规划开始进行整体介绍安装部署Oracle RAC.始于唐博士指导,对数据库集群进行配置安装,前…
缓存融合技术和主要后台进程(四) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总.然后形成体系的总结,一则进行回顾复习,另则便于查询使用.本图文文档亦源于此.阅读Oracle RAC安装与使用教程前,笔者先对这篇文章整体构思和形成进行梳理.由于阅读者知识储备层次不同,我将从Oracle RAC安装前的准备与规划开始进行整体介绍安装部署Oracle RAC.始于唐博士指导,对数据库集群进行配置安装,前…
ORACLE. SQLSERVER.MYSQL与DB2的区别--平台性:    Oracle.MYSQL与DB2可在所有主流平台上运行:    SQL Server只能在Windows下运行: --安全性:    Oracle的安全认证获得最高认证级别的ISO标准认证,而SQL Server并没有获得什么安全认证:    这方面证明了Oracle的安全性是高于SQL Server的: --数据类型.函数.sql语句:    oracle中有复合数据类型,sql server中没有: 总之:   …
一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b.关闭ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>shutdown SVRMGR>quit 启动…
版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内容用于商业用途,将保留追究其法律责任的权利.如果有问题,请以邮箱方式联系作者(793113046@qq.com). 1.聚簇因子的概念 聚簇因子,是CBO优化器决定是否使用索引的因素之一,主要反映索引块上的数据(顺序存储),与该索引基于的表块上的数据(无序存储)的顺序相似程度的差异性.即表数据的存储…