成都网站建设设计

将想法与焦点和您一起共享

oracle事务怎么结束,oracle数据库开启事务

oracle中怎么结束存储过程

1. 在V$ACCESS视图中找到要停止进程的SID:

成都创新互联公司是一家专注于网站制作、网站建设与策划设计,习水网站建设哪家好?成都创新互联公司做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:习水等地区。习水做网站价格咨询:18982081108

SELECT SID FROM V$ACCESS WHERE NAME='存储过程名称';

2. 在V$SESSION视图中查找到查出SID和SERIAL#

SELECT SID,SERIAL#,FROM V$SESSION WHERE SID='刚才查到的SID'。

3.杀掉查找出来的进程

alter system kill session 'SID,SERIAL#' immediate;

解释:进程都有唯一的进程id(SID)和序列号(SERIAL#),之后通过kill命令即可强制停止进程。

请问Oracle何时开启一个事务啊,谢谢

当然不是了,在Oracle中,只有DML才会开启一个事务。也就是说Insert,Update,Delete这些都会开启一个事务,并且该事务在commit/rollback/ddl命令时会自动结束。

其他的,像查询语句Select(不包含For Update等语句)时,是不会开启一个事务的。

补充:

首先有一点非常抱歉,上次的回答中误将DML写成了DDL,可能这一点儿让你误解了。

“当insert语句后会打开事务,然后再来一个insert语句又会是一个新事物是吗”这种说法是不正确的,第一个Insert没有commit或者rollback的情况下,第二个Insert和第一个是属于同一个事务的。因为Insert不属于commit/rollback/ddl命令,而是属于DML命令。

当第一个Insert结束后,立即执行一个新建表,删除表等命令(DDL命令),则会结束当前事务。

为什么一个DDL语句执行的前后需要结束事务

Oracle事务始于DML语句 情况发事务结束: 一、COMMIT/ROLLBACK 二、执行DDL/DCL语句 三、客户端主断数据库连接(DISCONNECT) 四、数据库关闭(宕机) 另外DDL/DCL语句实际事务其隐含COMMIT Oracle需要特别指定事务始结束事务结束事务


本文题目:oracle事务怎么结束,oracle数据库开启事务
文章源于:http://chengdu.cdxwcx.cn/article/hedich.html