oracle 会话和事务的区别

发布网友 发布时间:2022-04-26 22:50

我来回答

2个回答

热心网友 时间:2022-04-08 08:04

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

由此可见,事务的运行必须建立在会话的基础上,但是有了会话不一定有事务(可以空闲,比如你接通了电话,什么都不说)。

热心网友 时间:2022-04-08 09:22

会话,相当于创建一个oracle的实例,和创建对象没有区别,创建会话的同时,会进行一系列的初始化动作. 事务是基于会话基础上的,结合手动开启事务会理解的简单一些. 数据库设置手动开启事务,首先插入一条信息,手动提交事务,这就是一个事务,然后修改这条信息,再次提交事务,这就是第二个事务. 数据库默认是自动提交事务的,所以你的每一步操作都是一个事务.

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com