当前位置: 首页 > article >正文

MySQL-28.事务-介绍与操作

一.为什么需要事务

 

-- ============================================== 事务 =================================================
-- 删除部门
delete from tb_dept where id = 1;

-- 删除部门下的员工
delete from tb_emp where dept_id = 1;

这样的话就可以成功删除,但是有一个问题:如果部门id=1的被成功删除了,但是部门下的员工在删除时出错了,那么就会导致没有部门1但是有部门1的员工,就会造成数据不一致的问题。

为了解决以上问题,就提出了事务的概念。

二.事务

 

如果执行成功,便提交事务,如果执行失败,便回滚事务。

-- ============================================== 事务 =================================================

start transaction ;
-- 删除部门
delete from tb_dept where id = 1;

-- 删除部门下的员工
delete from tb_emp where dept_id = 1;

-- 提交事务
commit ;

-- 回滚事务
rollback ;


http://www.kler.cn/news/363668.html

相关文章:

  • COSCon'24 志愿者招募令:共创开源新生活!
  • 【机器学习】VQ-VAE(Vector Quantized Variational Autoencoder)
  • win11修改桌面默认路径
  • 用户账户与授权UAA与OAuth2
  • 053_python基于深度学习的短视频内容理解与推荐系统
  • Lua表(Table)
  • 【每日一题】LeetCode - 反转整数问题
  • 多线程初阶(七):单例模式指令重排序
  • 【Docker技术详解】(一)Docker镜像文件系统的关系和交互
  • Spring Cache Caffeine 高性能缓存库
  • 学习AJAX请求(初步)24.10.21-10.23
  • JAVA应用测试,线上故障排查分析全套路!
  • 数据结构 —— 链式二叉树(C语言讲解)
  • main.ts中引入App.vue报错,提示“Cannot find module ‘./App.vue’ or its corresponding type
  • Webpack安装
  • python: Parent-child form operations
  • 常用的7种Android手机自动化测试工具
  • 2024.10月21日- Vue Router路由管理器
  • 图文深入介绍oracle资源管理
  • flutter小记
  • Apache Calcite - 查询优化之逻辑优化简介
  • 12.useComponentWillUnmount
  • 【MySQL】提高篇—复杂查询:子查询与嵌套查询
  • 【C++笔记】类和对象(下)
  • 02.05、链表求和
  • 【状态机DP】力扣2786. 访问数组中的位置使分数最大