我的编程空间,编程开发者的网络收藏夹
学习永远不晚

什么是MySQL的事务处理

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

什么是MySQL的事务处理

本文主要给大家简单讲讲什么是MySQL的事务处理,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望什么是MySQL的事务处理这篇文章可以给大家带来一些实际帮助。                                                             

MySQL的事务处理

步骤:

1.开启事务 start transaction

当我们开启一个事务的时候,我们对sql的操作都发生在内存中,但是没有真正的反馈到数据库磁盘的文件中!

2.回滚 rollback

回滚,就是恢复到事务开启之前的最原始的状态!

注意:回滚操作会自动的关闭一个事务,如果想再次执行事务,需要重新开启事务!

3.提交 commit

事务的基本原理

普通的执行,之所以是立即执行并生效,因为默认的,MySQL对sql语句的执行是自动提交的!所以,开启一个事务的本质,就是关闭了以前的自动提交的功能,而是由用户手动提交(利用commit语句)!【相关视频教程推荐:MySQL教程】

总结事务的步骤:

1,  开启事务

2,  如果执行成功,就提交commit

3,  如果有任何一条sql语句执行失败,则回滚rollback!

事务处理的示例:

事务处理最典型的就是借还钱,下面以张三向李四还1000元为例:

首先查看数据库中各自的钱数

什么是MySQL的事务处理

下面是处理还钱事务的代码:

<?php 



echo "<meta charset=utf-8>";

// 1 连接数据库
$link = @mysql_connect('localhost','root','') or die('连接数据库失败');
mysql_select_db('test',$link);
mysql_query('set names utf8');

// 2  开启事务
mysql_query("start transaction");
//设置一个变量,用来判断所有sql语句是否成功
$flag = true;

// 2.1执行事务中的一组sql语句 
   
// 李四的money+1000
$sql = "update pdo set mone=money+1000 where name='李四'";
$res = mysql_query($sql);
if (!$res) {
    //若sql语句执行失败,把$falg设置为false
    $flag = false;
}

//张三的money-1000
$sql = "update pdo set money=money-1000 where name='张三'";
$res = mysql_query($sql);
if (!$res) {
    //若sql语句执行失败,把$falg设置为false
    $flag = false;
}

// 2.2 判断事务是否执行成功
if ($flag) {
    //所有sql语句执行成功,把sql语句提交
    mysql_query('commit');
    echo "还钱成功!";
}else{
    // 如其中一条执行失败,则回滚到事务开启之前的状态
    mysql_query('rollback');
    echo "还钱失败!";
}

结果:

什么是MySQL的事务处理

什么是MySQL的事务处理

下面,我们故意把其中一个字段写错,看看事务是否正常处理,数据库中的钱数是否有变化!

// 李四的money+1000
$sql = "update pdo set mone=money+1000 where name='李四'";  //把moeny字段错写成mone

结果:

什么是MySQL的事务处理

什么是MySQL的事务处理

结果是还钱失败,并且数据库中各自的钱数没有变化,说明当某一条语句未执行成功时,事物不会提交,而会回滚,把数据恢复到开始事务之前的原始状态,这也是使用事务的作用,即只有当事务中所有sql语句全部执行成功,事务才会提交,否则会回滚!

什么是MySQL的事务处理就先给大家讲到这里,对于其它相关问题大家想要了解的可以持续关注我们的行业资讯。我们的板块内容每天都会捕捉一些行业新闻及专业知识分享给大家的。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

什么是MySQL的事务处理

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql事务处理指的是什么

这篇文章主要介绍了mysql事务处理指的是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql事务处理指的是什么文章都会有所收获,下面我们一起来看看吧。在mysql中,事务处理是一种机制,用来管理必须成
2022-11-30

Redis处理事务的方法是什么

Redis处理事务的方法是使用MULTI、EXEC、DISCARD和WATCH命令来实现事务处理。具体步骤如下:使用MULTI命令来开启一个事务块,表示事务的开始。在事务块中可以使用多个命令来执行一系列操作,这些操作会被暂时保存在事务队列
Redis处理事务的方法是什么
2024-04-09

java事务处理的步骤是什么

在Java中进行事务处理通常包括以下步骤:获取数据库连接:首先需要建立与数据库的连接,通常使用JDBC或者ORM框架来获取数据库连接。开启事务:在执行数据库操作之前,需要通过调用数据库连接对象的setAutoCommit(false)方法来
java事务处理的步骤是什么
2024-03-07

mysql事务回滚的原理是什么

MySQL中的事务回滚是通过将数据库恢复到事务开始之前的状态来实现的。事务回滚的原理如下:1. MySQL使用日志来记录所有对数据库的更改,包括插入、更新和删除操作。有两种类型的日志:重做日志(redo log)和撤销日志(undo log
2023-10-09

MyBatis中处理事务的方法是什么

MyBatis中处理事务的方法有两种:使用程序控制事务:通过获取MyBatis的SqlSession对象,调用其beginTransaction()、commit()、rollback()等方法来控制事务的提交和回滚。SqlSession
MyBatis中处理事务的方法是什么
2024-03-07

什么是mysql事务

MySQL事务是一组数据库操作的逻辑单元,提供了一种保证数据一致性和完整性的机制,具有以下四个特性:1、原子性,事务中的所有操作被视为一个原子单元,要么全部执行成功,要么全部失败回滚;2、一致性,务开始之前和结束之后,数据库的状态必须保持一
2023-07-28

MySQL事务处理

概述在MySQL中只有使用了InnoDB数据库存储引擎的数据库或表才支持事务。事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部成功,要么全部失败。事务用来管理DDL、DML、DCL操作,比如:insert、update、delete语句,默认是
MySQL事务处理
2014-12-03

redis事务是怎么处理的

redis 事务是一种将多个命令打包在一起的机制,要么全部执行,要么全部回滚,从而确保数据的完整性和一致性。开启事务通过 multi 命令,提交事务通过 exec 命令。事务队列化执行,并具有原子性,若任何命令执行失败,则整个事务回滚。需要
redis事务是怎么处理的
2024-05-21

mysql事务特性的实现原理是什么

MySQL事务特性的实现原理是通过使用日志和锁机制来保证事务的原子性、一致性、隔离性和持久性。1. 原子性:MySQL使用redo日志和undo日志来保证事务的原子性。当事务执行更新操作时,会先将更新操作写入redo日志中,然后再将更新操作
2023-10-12

mysql事务的含义是什么

这篇文章主要介绍了mysql事务的含义是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql事务的含义是什么文章都会有所收获,下面我们一起来看看吧。mysql事务是指对数据库执行一批操作,在同一个事务当
2023-05-25

RabbitMQ,RocketMQ,Kafka事务性的处理策略是什么

这篇文章主要讲解了“RabbitMQ,RocketMQ,Kafka事务性的处理策略是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“RabbitMQ,RocketMQ,Kafka事务性的处
2023-06-29

编程热搜

目录