三分钟掌握MySQL中事务的处理
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,本文主要给大家介绍MySQL中事务的处理,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下MySQL中事务的处理吧。步骤:1.开启事务 start
千家信息网最后更新 2025年01月20日三分钟掌握MySQL中事务的处理
本文主要给大家介绍MySQL中事务的处理,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下MySQL中事务的处理吧。
步骤:
1.开启事务 start transaction
当我们开启一个事务的时候,我们对sql的操作都发生在内存中,但是没有真正的反馈到数据库磁盘的文件中!
2.回滚 rollback
回滚,就是恢复到事务开启之前的最原始的状态!
注意:回滚操作会自动的关闭一个事务,如果想再次执行事务,需要重新开启事务!
3.提交 commit
事务的基本原理
普通的执行,之所以是立即执行并生效,因为默认的,MySQL对sql语句的执行是自动提交的!所以,开启一个事务的本质,就是关闭了以前的自动提交的功能,而是由用户手动提交(利用commit语句)!
总结事务的步骤:
1, 开启事务
2, 如果执行成功,就提交commit
3, 如果有任何一条sql语句执行失败,则回滚rollback!
事务处理最典型的就是借还钱。下面以张三向李四还1000元为例
首先查看数据库中各自的钱数
下面是处理还钱事务的代码:
php /*** MySQL实现事务操作
*/
echo "";
// 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 "还钱失败!";}
结果:
下面,我们故意把其中一个字段写错,看看事务是否正常处理,数据库中的钱数是否有变化!
// 李四的money+1000
$sql = "update pdo set mone=money+1000 where name='李四'"; //把moeny字段错写成mone
结果:
结果是还钱失败,并且数据库中各自的钱数没有变化,说明当某一条语句未执行成功时,事物不会提交,而会回滚,把数据恢复到开始事务之前的原始状态,这也是使用事务的作用,即只有当事务中所有sql语句全部执行成功,事务才会提交,否则会回滚!
以上就是MySQL中事务的处理的详细内容,更多请关注其它相关文章!
事务
语句
成功
数据
处理
数据库
李四
就是
状态
结果
张三
原始
内容
字段
文章
步骤
笔者
变化
普通
之所以
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
电子商务网络技术基础期末题
删除表 触发器删除数据库
襄樊有专门学软件开发的吗
销售软件开发有前途吗
山西开源聚合 网络安全
瑰夏咖啡
pg数据库测验题
博乐新华互联网科技行情
php邮件服务器程序
服务器独立显卡共享内存
贵阳市bim软件开发工程
量化数据库配置
单招计算机网络技术面试
sun 服务器 停产
暗黑2重制服务器怎么样
数据库软件招标技术指标
加大舆情监测守好网络安全
海康录像服务器管理口访问
信息网络安全宣传ppt
网络安全知识讲座范文
网络安全事件如何防范措施
国产硬核数据库
mysql改变数据库
php软件开发工程师考试
电梯蓝牙软件开发
安装win7选择网络安全模式
西安软件开发定制费用多少
济宁分销软件开发服务公司
数据库中字段值怎么设置
合肥视觉工控机服务器