如何在oracle中开启一个事务有这样的命令么?当你进入一个会话时你怎么知道当前所处的是否在一个事务中? 20

Oracle事务分为2中类型(显式和隐式方法)1.显示方法,就是利用命令完成。Oracle中的事务不需要设置开始标识。通常有下列情况之一时,事务会开启:登录数据库后,第一... Oracle 事务分为2中类型(显式和隐式方法)
1. 显示方法,就是利用命令完成。
Oracle中的事务不需要设置开始标识。通常有下列情况之一时,事务会开启:
登录数据库后,第一次执行DML语句。
当事务结束后,第一次执行DML语句。
2 . 隐式方法
该类型的事务没有明确的开始和结束标识。他有数据库自动开启,当一个程序正常结束或使用DDL语言时会自动提交,而操作失败时也会自动回滚。如果设置AUTOCOMMIT为打开状态(默认关闭),则每次执行DML操作都会自动提交。
语法为: SET AUTOCOMMIT ON/OFF;
事务在什么情况下结束需要注意,否则有丢数据的可能。有下列情况之一的,事务会结束
1 使用commit事务提交,使用rollback事务回滚
2 执行DDl语句,事务会自动提交。例如,使用create,drop,grant,revoke等命令。
3 正常退出sql*plus时自动提交事务,非正常退出时则rollback事务回滚。
展开
 我来答
twvampire
2013-12-18 · TA获得超过3620个赞
知道大有可为答主
回答量:3029
采纳率:76%
帮助的人:3010万
展开全部
BeginTrans用于开始一个事物;RollbackTrans用于回滚事务;CommitTrans用于提交所有的事务处理结果,即确认事务的处理

BeginTrans和CommitTrans 用于标记事务的开始和结束,在这两个之间的语句,就是作为事务处理的语句
追问
在plsql中,Begin transaction; 是不能运行的,start transaction;也不行。我的意思是当你进入到一个会话时,你怎么知道你当前是不是处在一个未提交的事务中。 或者有没有像mysql中 start transaction;类似的语句开启一个事务,谢谢
追答
我对oracle也不是很熟悉,给你资料
(载录:)
oracle提供了如下的事务控制语句:
c) Set transaction 设置事物属性
d) Set constrains 设置事物的约束模式
e) 约束模式是指:在事务中修改数据时,数据库中的约束立即应用于数据,还是将约束推迟到当前事务结束后应用。
f) Savepoint 在事务中建立一个存储的点.当事务处理发生异常而回滚事务时,可指定事务回滚到某存储点.然后从该存储点重新执行。
g) Release savepoint 删除存储点
h) Rollback 回滚事务取消对数据库所作的任何操作
i) Commit 提交事务 对数据库的操作做持久的保存。
具体语句例子,看这个网址
http://liujiandgm.blog.163.com/blog/static/4336235220085199045398/
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式