6.9学习总结

事务

事物是一组操作的集合,事物会把所有的操作作为一个整体一起提交或者撤回,所以这些操作要么同时成功要么同时失败。

四大特性ACID

原子性(Atomicity):事务是不可分割的最小操作单位,要么全部成功,要么全部失败。

一致性(Consistency):事务完成时,必须使所有数据都保持一致状态。

隔离性(Isolation):数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行。

持久性(Durability):事务一旦提交或回滚,它对数据库中的数据的改变就是永久的。

并发事务(多个事务同时运行时出现的问题)

问题

描述

脏读

多个事务同时运行时,一个事务读取到了另一个事务未提交的数据

不可重复读

多个事务同时运行时,一个事务对同一条数据进行多次查找,所得到的数据不同

幻读

多个事务同时运行时,一个事务在同一条件下多次进行查找,所得到的数据的条数不同

通俗解释:

脏读:一个事务读取了另一个事务中未提交的数据,导致得到了不一致和不准确的数据。

不可重复读:一个事务读取到了另一个事务中已提交的被改变的数据,导致了对同一条数据进行多次查找得到不同结果。

幻读:一个事务读取到了另一个事务中已提交的插入或者删除的数据。导致在同一条件下查找,所得到的数据的条数不同。

并发事务隔离级别

隔离级别

脏读

不可重复读

幻读

Read uncommitted

Read committed

×

Repeatable Read(默认)

×

×

Serializable

×

×

×

  • √表示在当前隔离级别下该问题会出现
  • Serializable 性能最低;Read uncommitted 性能最高,数据安全性最差

例子:

  • Read uncommitted:事务A读取到事务B未提交的修改,如果事务B回滚,则事务A读取到的数据就成了脏数据。
  • Read committed:事务A第一次读取某数据行,接着事务B修改并提交该数据行,然后事务A再次读取时,发现数据已经被修改,这就是不可重复读。
  • Repeatable Read:事务A在开始时读取某数据行,然后事务B修改并提交该数据行,但事务A在其生命周期内再次读取同一数据行时,仍然看到的是最初的数据,而不是事务B修改后的数据。
  • Serializable:事务A执行一个范围查询操作,然后事务B试图插入或修改范围内的数据时,被阻塞,直到事务A完成,确保事务A不会看到任何新的或修改的数据行。
事务的运行过程

先开起事务(标记一个事务的开始),然后执行想要在一个事务中运行的语句,最后可以根据情况选择提交事务(事务运行成功,数据改变)或者回滚事务(事务运行失败,数据回到开始事务之前),至此一个事务结束。

例:

启动事务

启动事务(BEGIN 或 START TRANSACTION): 在执行数据库操作之前,使用 BEGIN 或 START TRANSACTION 命令启动事务。这会告诉数据库管理系统,接下来的一系列操作将作为一个事务执行。

BEGIN;
-- 或者
START TRANSACTION;

执行数据库操作

执行数据库操作:执行想要放在一个事务中的操作例如插入数据、更新数据、删除数据等。

insert into topic(topicid) values(1); 
update topic set topicid=0;
delete from topic where topicid=0;

提交事务

提交事务:如果在执行过程中没有发生错误,并且希望保存所有已经执行的操作,则使用 COMMIT 命令提交事务。提交操作将确保事务中的所有修改被永久保存到数据库中。

commit;

查看事务隔离级别:

SELECT @@TRANSACTION_ISOLATION;

设置事务隔离级别:

SET [GLOBAL | SESSION] TRANSACTION ISOLATION LEVEL 
{ READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE }

SESSION 是会话级别,表示只针对当前会话有效,GLOBAL 表示对所有会话有效

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MathType 6.9是一款数学公式编辑器软件。根据引用\[1\],由于使用了很长时间的机械硬盘出现坏道,安装在其中的MathType6.9无法使用。你想安装MathType的高版本,如7.4,但在网上找不到其他版本,也没有找到最新的版本。根据引用\[2\],以下安装过程只适用于MathType 6.9,不适用于MathType 7.0及以后版本。你可以尝试下载MathType 6.9的英文原版,而不是使用中文试用版。在安装之前,请删除"HKEY_CURRENT_USER\Software\Install Options"中的项目。根据引用\[3\],MathType软件的定位可以是学习必备工具,也可以是工作过程中所需各类项目的公式组成工具。它具有广泛的用途,并且对于数据的处理具有较高的准确性。在初始安装时,请选择适合你的语言,以减少理解上的障碍。 #### 引用[.reference_title] - *1* *3* [MathType6.9最新版本嵌入关联Word表格教程](https://blog.csdn.net/CaiHuaZeiPoJie/article/details/128896911)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [如何安装MathType 6.9](https://blog.csdn.net/pijianzhirui/article/details/90761188)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值