oracle 会话和事务的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 会话和事务的区别相关的知识,希望对你有一定的参考价值。

会话,指的是客户端连接到服务器的一个上下文环境。它是一个逻辑概念。你比如,创建了一个会话,这个会话记录了客户端的ip,客户端的用户名等信息。以及发布的sql命令的游标等。这些信息都是存储在内存中的。oracle实例赋予一个id(session——id)来逻辑地把这些信息组织在一起。
事务,指的是你在当前会话中要做的一件事情,而这件事情包括好多步操作。任何一步操作失败,你要做的整个这个事情也会失败。这就是事务的原子性。
会话和事务其实在概念上没有多大的联系,所以也就没有什么区别之分。给你举个例子来说明会话与事物的一个大概关系。
比如,你要给你家人拜年(这是一个事物)。前提是你必须先联系上你的家人,假如你打电话给你家人,当接通时你们就产生了一个会话,然后你就可以拜年了(就可以进行事务了)。

由此可见,事务的运行必须建立在会话的基础上,但是有了会话不一定有事务(可以空闲,比如你接通了电话,什么都不说)。
参考技术A 会话,相当于创建一个oracle的实例,和创建对象没有区别,创建会话的同时,会进行一系列的初始化动作. 事务是基于会话基础上的,结合手动开启事务会理解的简单一些. 数据库设置手动开启事务,首先插入一条信息,手动提交事务,这就是一个事务,然后修改这条信息,再次提交事务,这就是第二个事务. 数据库默认是自动提交事务的,所以你的每一步操作都是一个事务.

以上是关于oracle 会话和事务的区别的主要内容,如果未能解决你的问题,请参考以下文章

Grails:未刷新的会话和回滚的事务有啥区别?

ORACLE临时表总结

ORACLE临时表总结[转]

oracle和mysql的区别

ORACLE临时表总结(转载)

mysql中会话和进程如何查询