首页 > 数据库 >mysql事务

mysql事务

时间:2023-04-19 09:35:54浏览次数:67  
标签:事务 要么 数据库 事务处理 提交 mysql 执行

1、介绍

MySQL 事务主要用于处理操作量大,复杂度高的数据。

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

2、事务条件 ACID

  • 原子性:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。
  • 一致性:在事务开始之前和事务结束以后,数据库的完整性没有被破坏。这表示写入的资料必须完全符合所有的预设规则,这包含资料的精确度、串联性以及后续数据库可以自发性地完成预定的工作。
  • 隔离性:数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发执行时由于交叉执行而导致数据的不一致。事务隔离分为不同级别,包括读未提交(Read uncommitted)、读提交(read committed)、可重复读(repeatable read)和串行化(Serializable)。
  • 持久性:事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。

3、事务控制

  • begin开始事务,rollback回滚,commit提交
  • set autocommit=0禁止自动提交,set autocommit=1开启自动提交

标签:事务,要么,数据库,事务处理,提交,mysql,执行
From: https://www.cnblogs.com/wd404/p/17332098.html

相关文章

  • mysql之alter命令
    #删除表字段,需要表中字段数大于1ALTERTABLEtestalter_tblDROPi;#添加字段,添加到末尾ALTERTABLEtestalter_tblADDiINT;#添加字段到首位ALTERTABLEtestalter_tblADDiINTFIRST;#添加字段到某字段之后ALTERTABLEtestalter_tblADDiINTAFTERc;#定义......
  • mysql管理
    MySQL管理|菜鸟教程(runoob.com),在下方笔记有大量有用内容。1、启动管理1.1windows1.2linux(这里安装的是mariadb)systemctlstartmariadb#启动systemctlrestartmariadb#重启systemctlstopmariadb#停止systemctlstatusmariadb#查看运行状态systemctlenabl......
  • mysql索引与主键、外键
    1、介绍优点:索引可以大大提高mysql的检索速度。缺点:虽然索引大大提高了查询速度,同时却会降低更新表的速度,如对表进行INSERT、UPDATE和DELETE。因为更新表时,MySQL不仅要保存数据,还要保存一下索引文件。建立索引会占用磁盘空间的索引文件。2、分类2.1普通索引#基础创建CREA......
  • mysql函数
    1、介绍mysql函数分为四大类:字符串函数、数值函数、日期函数和高级函数。MySQL函数|菜鸟教程(runoob.com)2、常用一般函数时间:now()#返回当前日期和时间2018-09-1920:57:43curtime()#返回当前时间19:59:02current_timestamp()#返回当前日期和时间2018-09-1920:......
  • mysql函数(补充)
    环境:10.4.26-MariaDB1、sleepsleep(n)执行一遍函数,延时n秒如果在where条件中多次需要执行sleep,则多次延时sleep函数返回为false,不论是n是否为0假设设置sleep(100),数据库如实进行了延时n可以设定为小数,最小是0.001,但是这并不是绝对准确2、updatexmlupdatexml(v1,v2,v3......
  • MySQL 主从延迟的常见原因及解决方法
    承蒙大家的支持,刚上市的《MySQL实战》已经跃居京东自营数据库图书热卖榜第1名,收到的反馈也普遍不错。对该书感兴趣的童鞋可通过右边的链接购买。目前,京东自营有活动,只需5折。主从延迟作为MySQL的痛点已经存在很多年了,以至于大家都有一种错觉:有MySQL复制的地方就有主从延......
  • 实现声明式锁,支持分布式锁自定义锁、SpEL和结合事务
    目录2.实现2.1定义注解2.2定义锁接口2.3锁的实现2.3.1什么是SPI2.3.2通过SPI实现锁的多个实现类2.3.3通过SPI自定义实现锁3.定义切面3.1切面实现3.2SpEL表达式获取动态key3.3锁与事务的结合4.测试4.1ReentrantLock测试4.2RedissonClient测试4.3自定义锁测试5.尾声5.1......
  • Redis高级 哈希类型、列表类型、集合类型、有序集合(zset)、慢查询、pipeline与事务
    哈希类型###1---hget,hset,hdelhgetkeyfield#获取hashkey对应的field的value时间复杂度为o(1)hsetkeyfieldvalue#设置hashkey对应的field的value值时间复杂度为o(1)hdelkeyfield#删除hashkey对应的field的值时间复杂度为o(1)#测试hsetuser:1:infoage......
  • MYSQL基本概述
    MYSQL1、主从复制总览:mysql主从复制是一个异步的复制过程:1、主库会创建一个binlog输出线程,实时的将mysql的操作写入本地的binlog二进制文件中2、从库开始复制时​ 创建从库I/O线程,将主库传来的binlog文件,保存到本地的relaylog文件中。​ 创建SQL线程,从readylog文件中的......
  • 【Redis】哈希类型 列表类型 集合类型 有序集合 慢查询 pipeline与事务 发布订阅 Bitm
    目录昨日回顾今日内容1哈希类型2列表类型3集合类型4有序集合(zset)5慢查询6pipeline与事务7发布订阅8Bitmap位图9HyperLogLog作业昨日回顾#1redis介绍 -特性#速度快:10wops(每秒10w读写),数据存在内存中,c语言实现,单线程模型#持久化:rdb和aof#多种数据结......