MySQL在线运行

版本:

所属目录
点击了解高性能代码运行API
运行结果
教程手册
代码仓库
极速运行
交互输入
极速运行模式,更高效的运行,点击编辑器上方的运行按钮即刻体验吧。
以下是用户最新保存的代码
测试 groupby 和distinct 发布于:2022-11-05 23:02 数据结构代码 发布于:2022-11-01 17:42 下届课要用 发布于:2022-11-01 14:03 新建表数据,方便使用 发布于:2022-11-01 13:18 MySQL课程保存 10月25日 11月1日 发布于:2022-11-01 20:14 学习电脑下载不了 发布于:2022-10-24 10:28 订单表创建 发布于:2022-10-23 18:56 goods表创建 发布于:2022-10-23 18:50 项目四数据查询 发布于:2022-10-21 11:44 大数据金融10-21 发布于:2022-10-21 15:33 mysql教学 发布于:2022-10-21 11:48 mysql基础 发布于:2022-10-21 10:55 SQL查找、增减、删除 发布于:2022-10-21 10:43 mysql教程 发布于:2022-10-22 09:33 数据库简单编译 发布于:2022-10-20 10:45 单表查询实战 发布于:2022-10-20 21:40 mysql实战测试 发布于:2022-10-20 00:12 单表数据记录查询 发布于:2022-10-18 13:00 数据库原理及应用 发布于:2022-10-17 13:44 基本数据建模 发布于:2022-10-13 11:46 创建图书表 发布于:2022-10-12 16:01 MySQL课程保存 10月11日 10月18日 10月25日 发布于:2022-10-25 19:39 学生_课程管理系统 发布于:2022-10-11 10:50 数据库实验课 发布于:2022-10-11 09:15 创建学生表 发布于:2022-10-13 13:14 小龙的测试数据库 发布于:2022-10-07 17:46 实现查询实验 发布于:2022-10-06 19:46 吴淼淼的第二个代码 发布于:2022-09-29 11:39 THE WORLD 发布于:2022-09-29 11:16 上课题目结果 发布于:2022-09-29 09:49 汪雯静23实训周四 发布于:2022-09-29 09:03 铜仁的一个简单的代码 发布于:2022-09-28 17:54 吴淼淼的第一个代码 发布于:2022-09-27 11:37 第一个代码 发布于:2022-09-27 11:35 PPT,19到28页 发布于:2022-09-27 11:31 hhhh 上课内容 发布于:2022-09-29 10:23 代码的测试方法 发布于:2022-09-26 09:22 wode daima 发布于:2022-09-26 09:22 wode daima 发布于:2022-09-29 08:59 电子杂志订阅表 发布于:2022-09-25 00:27 9.20 大数据与基础 发布于:2022-09-20 11:35 求出每3个或2个相加的和等于10 发布于:2022-09-20 10:50 learn note 发布于:2022-09-17 20:29 创建代码 其中 id 唯一,自增,不为空 发布于:2022-09-07 21:19 MySQL Test1 发布于:2022-09-07 15:47 我的代码我 发布于:2022-08-25 17:00 创建教学管理数据库,包含专业、班级、学生、课程、教师和成绩共6个表 发布于:2022-08-24 10:44 P12 第三章1.1 发布于:2022-08-22 21:41 employee表格 发布于:2022-08-16 10:05 小白输入列表 发布于:2022-08-15 10:44 [更多]
显示目录

事务



事务

MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务!

  • 在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务。
  • 事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行。
  • 事务用来管理 insert , update , delete 语句。

一般来说,事务是必须满足4个条件(ACID): Atomicity(原子性或不可分割性)、Consistency(一致性)、Isolation(隔离性或独立性)、Durability(持久性)

原子性 一组事务,要么成功;要么撤回,即事务在执行过程中出错会回滚到事务开始前的状态。
一致性 一个事务不论是开始前还是结束后,数据库的完整性都没有被破坏。
因此写入的数据必须完全符合所有预设规则(资料精确度、串联性以及后续数据库能够自发完成预定工作)。
隔离性 数据库允许多个事务并发的同时对其数据进行读写修改等操作,
隔离性可以防止多个事务并发执行时由于交叉执行而导致数据的不一致。
事务隔离可分为:Read uncommitted(读未提交)、Read committed(读提交)、
Repeatable read(可重复读)、Serializable(串行化)。
持久性 事务在处理结束后对数据做出的修改是永久的,无法丢失。

事务控制语句

1,显式的开始一个事务:

start transaction

begin

2, 做保存点,一个事务中可以有多个保存点:

savepoint 保存点名称

3, 提交事务,并使数据库中进行的所有修改成为永久性的:

commit

commit work

4,回滚结束用户的事务,并撤销正在进行的所有未提交的修改:

rollback

rollback work

5.删除一个事务的保存点,若没有指定保存点,执行该语句操作会抛错。

release savepoint 保存点名称

6.将事务滚回标记点:

rollback to 标记点

7.设置事务的隔离级别。InnoDB 存储引擎提供事务的隔离级别有READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ 和 SERIALIZABLE。

set transaction

事务处理方法

用 begin , rollback , commit 来实现事务处理。

用 set 来改变 MySQL 的自动提交模式。

  • set autocommit = 0 (禁止自动提交)。
  • set autocommit = 1 (开启自动提交)。

PHP中使用事务实例 ··· <?php $handler=mysql_connect("localhost","root","password"); mysql_select_db("task"); mysql_query("SET AUTOCOMMIT=0");//设置为不自动提交,因为MYSQL默认立即执行 mysql_query("BEGIN");//开始事务定义 if(!mysql_query("insert into trans (id) values('2')")) { mysql_query("ROOLBACK");//判断当执行失败时回滚 } if(!mysql_query("insert into trans (id) values('4')")) { mysql_query("ROOLBACK");//判断执行失败回滚 } mysql_query("COMMIT");//执行事务 mysql_close($handler); ?> ···

由JSRUN为你提供的MySQL在线运行、在线编译工具
        JSRUN提供的MySQL 在线运行,MySQL 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。

title

使用此草稿 删除草稿

  • 00:23
注册登录后可减少验证码的弹出,点击前往 注册 | 登录

皮肤:

运行模式:

嵌入代码 iframe嵌入:


服务器已安装大部分常用的依赖库,但仍会存在一些未被安装的库, 可以通过本窗口立即安装所需依赖库,请确保库名正确,否则无法安装成功。


请输入依赖库的名称:

请选择语言: