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

MySQL事务处理实现方法步骤

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

北京

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

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

看不清楚,换张图片

免费获取短信验证码

MySQL事务处理实现方法步骤

需求说明: 

案例背景:银行的转账过程中,发生意外是在所难免。为了避免意外而造成不必要的损失,使用事务处理的方式进行处理:

A账户现有余额1000元,向余额为200的B账户进行转账500元。可能由于某原因: 

A账户在扣除转账金额时发生错误,使用事务回滚来返回到初始状态

A账户成功扣除转账金额后,B账户添加转账金额发生错误,使用事务回滚到初始状态

提示:先建数据表account,字段包括姓名(username)、余额(money),再分别利用事务处理以上两种情况。

#创建账户表  
CREATE TABLE IF NOT EXISTS account(  
  id INT(11)NOT NULL AUTO_INCREMENT PRIMARY KEY,  
  username VARCHAR(32)NOT NULL,  
  money DECIMAL(9,2)  
)ENGINE=INNODB;  
#插入用户数据  
INSERT INTO account(username,money)VALUES('A',1000.00);  
INSERT INTO account(username,money)VALUES('B',200.00);  
  
  
#  A账户汇款失败  
SELECT * FROM account;  
#第一步 关闭事务自动提交模式  
SET autocommit=0;  
#第二步 开始事务  
START TRANSACTION;  
#第三步 发现汇款失败,将事务回滚ROLLBACK ||  汇款成功将事件commit  
#假设语法错误  
UPDATE account SET money=money-500 WHERE username='A';  
SELECT * FROM account;  
UPDATE account SET money=money+200 WHERE username='B';  
ROLLBACK;  
#第四步 还原Mysql数据库的的自动提交  
SET autocommit=1;  
SELECT * FROM account;  
   
  
  
SELECT *FROM account ;  
SET autocommit =0;  
START TRANSACTION;  
UPDATE account SET money=money-500 WHERE username='A';  
SELECT * FROM account ;  
#假设语法错误  
UPDATE account SET money=money+200 WHERE username ='B';  
ROLLBACK;  
SET autocommit =1;  
SELECT * FROM account;  
  
#清除数据  
<pre name="code" class="sql">TRUNCATE account;

备注:

使用IF NOT EXISTS创建数据表的解释

免责声明:

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

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

MySQL事务处理实现方法步骤

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

下载Word文档

猜你喜欢

java事务处理的步骤是什么

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

PHP中的事务处理是如何实现的?(请解释PHP中进行数据库事务处理的步骤。)

PHP中事务处理可确保数据库操作要么全部成功执行,要么全部回滚失败。它通过开始事务、执行操作、提交或回滚事务以及异常处理来实现。PHP事务处理遵循ACID属性,包括原子性、一致性、隔离性和持久性。最佳实践包括只在需要时使用事务,保持事务简洁,避免复杂操作,并始终处理异常以防止数据不一致。
PHP中的事务处理是如何实现的?(请解释PHP中进行数据库事务处理的步骤。)
2024-04-02

如何实现MySQL中的事务处理?

如何实现MySQL中的事务处理?事务是数据库中重要的概念之一,能够保证数据的一致性和完整性,确保在并发操作中数据的正确性。MySQL作为一种常用的关系型数据库,也提供了事务处理的机制。一、事务的特点事务具有以下四个特点,通常用ACID来概括
2023-10-22

PHP实现IP代理服务器的步骤与注意事项

标题:PHP实现IP代理服务器的步骤与注意事项在今天的网络环境中,使用IP代理服务器来隐藏真实IP地址是很常见的做法。本文将介绍如何使用PHP来实现一个简单的IP代理服务器,并分享一些注意事项和代码示例。步骤要实现一个IP代理服务器,
PHP实现IP代理服务器的步骤与注意事项
2024-03-11

MySQL事务实现的方法是什么

在MySQL中,可以使用以下方法来实现事务:使用START TRANSACTION、COMMIT和ROLLBACK语句来开始、提交和回滚事务。START TRANSACTION; -- 开始事务-- 执行一系列的操作COMMIT; -
MySQL事务实现的方法是什么
2024-03-12

Android 单双击实现的方法步骤

记录单击、双击实现过程,进行简单的封装,便于复用,包括常用的软件双击退出。双击实现:记录第一次点击时间,在设定时间内再次点击,则返回监听事件,否则不做处理;Application双击退出亦是同样的实现逻辑。/*** 双击实现** @auth
2022-06-06

MySQL 主从同步,事务回滚的实现原理

BinLogBinLog是记录所有数据库表结构变更(例如create、alter table)以及表数据修改(insert、update、delete)的二进制日志,主从数据库同步用到的都是BinLog文件。BinLog日志文件有三种模式。
2022-05-27

NodeJs使用Mysql模块实现事务处理实例

依赖模块: 1. mysql:https://github.com/felixge/node-mysqlnpm install mysql --save2. async:https://github.com/caolan/asyncnpm
2022-06-04

如何实现MySQL中事务处理的语句?

如何实现MySQL中事务处理的语句?在数据库操作中,事务处理是非常重要的一部分,它可以确保一系列的操作要么全部执行,要么全部不执行。MySQL中的事务处理可以通过以下示例代码来实现。首先,让我们创建一个示例表格来演示事务处理的语句:CREA
如何实现MySQL中事务处理的语句?
2023-11-09

用Golang函数实现异步事件处理

go 函数可用于实现异步事件处理,其中涉及使用 goroutine 监听事件,并通过 channel 接收和处理事件。在实战案例中,goroutine 循环接收并处理从 channel 发送的事件,而主线程可继续运行而无需阻塞。Go 函数实
用Golang函数实现异步事件处理
2024-05-04

k8s搭建mysql集群实现主从复制的方法步骤

目录环境介绍一、部署NFS服务器二、创建PV三、编写mysql的yaml文件四、启动MySQL五、验证MySQL主从复制环境介绍名称版本操作系统IP备注K8S集群1.20.15Centos7.9192.168.11.21 192.168.
2023-01-05

docker-compose实现容器任务编排的方法步骤

本文主要介绍了docker-compose实现容器任务编排的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-01-04

编程热搜

目录