mysql事务中ddl语句的隐式提交

2023-05-16

1、当执行到DDL语句时,会隐式的将当前回话的事务进行一次“COMMIT”操作,因此在MySQL中执行DDL语句时,应该严格地将DDL和DML完全分开,不能混合在一起执行。
2、为什么DDL语句会隐式提交?
因为DDL是数据定义语言,在我们的数据库中承担着创建,删除和修改的重要的职责。一旦发生问题,带来的后果很可能是不可估量的。
二是在每执行完一次后就进行提交,可以保证流畅性,数据不会发生阻塞,同时也会提高数据库的整体性能。
3、DDL和DML混和执行可能带来的风险:
3.1比如你打开一个事务正在修改数据,恰好研发同事找你在这个库上新建一个表,建完表你发现自己数据改错了,此时再想回滚就GG了!
3.2又比如研发给你一个事务脚本,中间夹在一个DDL语句,导致事务“中途”提交一次,等最后发现异常要回滚却发现只能回滚一部分。
4、DML语句补充知识点
set autocommit = 0; //1是自动提交,当前session禁用自动提交事物,自此句执行以后,每个SQL语句或者语句块所在的事务都需要显示"commit"才能提交事务。
//这里写insert或update等语句,source命令执行sql文件也有效
commit; //或者rollback;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql事务中ddl语句的隐式提交 的相关文章

随机推荐

  • [问题已处理]-linux在关机前执行脚本

    导语 xff1a 需要在关机和重启前执行一下关机前的脚本 避免某些服务没有正常关闭导致的问题 xff0c 或者某些服务关闭慢的问题 创建 lib systemd system cleanup service Unit Description
  • [linux]-ubuntu使用ufw及相关配置

    导语 xff1a 记录一下ufw的使用方式以及规则配置文件的更改 UFW配置文件 虽然可以通过命令行添加简单的规则 xff0c 但有些时候也需要添加或删除更加高级或特定的防火墙规则 在运行通过终端输入的规则之前 xff0c UFW会首先运行
  • dependencyManagement与dependencies区别

    dependencyManagement与dependencies区别 最近在阅读maven项目代码时 xff0c dependencyManagement与dependencies之间的区别不是很了解 xff0c 现通过项目实例进行总结
  • Linux-Day2_(包含软件)防火墙配置_软件安装_项目部署_虚拟机克隆_镜像还原

    Linux Day02 软件安装 soft https www aliyundrive com s 8ybAVk3nwhL 点击链接保存 xff0c 或者复制本段内容 xff0c 打开 阿里云盘 APP xff0c 无需下载极速在线查看 x
  • gnome菜单图标显示

    国产操作系统deepin uos都是gnome为基础的 xff0c 默认菜单里面不显示图标 这是因为他们基础gnome xff0c 而GNOME 从2 28之后 xff0c 按钮和菜单中的图标默认不再显示 如果要显示 xff0c 可以使用下
  • 【Algorithm】连续线性表模拟实现vector功能

    Cmakelists span class token function cmake minimum required span span class token punctuation span VERSION span class to
  • Spring+Springmvc+Mabatis环境搭建

    1 Download JDK 8 http www oracle com technetwork java javase downloads jdk8 downloads 2133151 html 环境变量 JAVA HOME D Prog
  • Ubuntu启动VirtualBox虚拟机之后鼠标无法打开菜单或者其他窗口的问题

    不知道从哪个版本 xff08 大概6 0之前的版本 xff09 开始 xff0c 某次升级了VirtualBox xff0c VirtualBox启动虚拟机之后 xff0c 鼠标点击菜单无法打开菜单 xff0c 任务栏上点击其他任务的图标也
  • spring boot使用logback时控制台不打印日志,使用slf4j解决不打印日志问题

    maven项目在pom中添加slf4j依赖 lt 用于解决日志不打印问题 gt lt dependency gt lt groupId gt org slf4j lt groupId gt lt artifactId gt slf4j ap
  • Android P 下keymaster安装流程

    转载请说明出处 菜鸡一只 xff0c 刚好学习到这里 xff0c 就分享一下 如有不对请各位大佬指出 InstallKeybox cpp 入口函数 KmInstallKeybox 进行安装 KM SECURITY LEVEL TRUSTED
  • 解决msvcr120.dll文件丢失问题(搞了半天,简直奔溃,最后完美解决)

    我是在安装MySQL时提示缺少这个文件 xff0c 搞了1太多 xff0c 各种方法都试了 解决办法 xff1a 试了好多方法 xff0c 都解决不了 网上下载msvcr120 dll放到对应目录下失败 下载安装VC 43 43 2013
  • NSS 错误码详细信息

    Table 8 1 Error codes defined in sslerr h SSL ERROR EXPORT ONLY SERVER 12288 Unable to communicate securely Peer does no
  • nltk.download失败解决方案

    因国际网络连接不稳定 xff0c 很多国内的小伙伴在使用NLTK下载停用词表时都碰到过下载失败的情况 其实解决方法很简单 xff0c 只要先下载官网停用词包 xff0c 然后在手动复制到NLTK对应目录下就好了 xff0c 具体方法如下 x
  • 谨以此文献给正在面临选择的你

    我是2011届的考生 xff0c 当我从我们学校的的分数公布栏上看到自己的分数时 xff0c 我感觉我的世界都变成了灰色 xff0c 一切都暗淡无光 在那段时间里 xff0c 我思考了很多的问题 xff0c 诸如要不要去复读 去哪一所学校
  • Android应用程序获取系统签名的方法

    在Android应用程序开发过程中 xff0c 经常会碰到要获取系统权限的问题 例如 xff1a lt uses permission android name 61 34 android permission STATUS BAR 34
  • VMware安装openEuler-20.03系统图文安装教程

    VMware安装openEuler 20 03系统图文安装教程 1 环境概要 系统架构 xff1a x86 64虚拟机软件 xff1a VMware16 pro安装的操作系统 xff1a openEuler 20 03 LTS 2 安装前准
  • 【雅可比左乘右乘】

    常见雅可比左乘 xff08 以自变量R为例子 xff0c 围绕旋转点p的旋转点的左扰动雅可比 xff09 xff1a 旋转点的右扰动雅可比 xff08 右乘 xff09 xff1a 左雅可比和右雅可比之间的区别在于它们各自描述了不同的变换方
  • Linux 下的 ActiveMQ C++ 客户端开发

    ActiveMQ CPP 是一个提供消息库 xff0c 即 ActiveMQ C 43 43 客户端 API 通过该接口 xff0c 我们可以使用多种协议来与消息中间件进行通信 本文主要针对 CentOS 7 x64 xff08 Linux
  • 基于Docker快速搭建ELK6.7.0

    1 安装ElasticSearch 1 1准备工作 1 1 1节点介绍 192 168 1 21 192 168 1 22 192 168 1 23 1 1 2拉取镜像 三台虚拟机都执行 docker pull elasticsearch
  • mysql事务中ddl语句的隐式提交

    1 当执行到DDL语句时 xff0c 会隐式的将当前回话的事务进行一次 COMMIT 操作 xff0c 因此在MySQL中执行DDL语句时 xff0c 应该严格地将DDL和DML完全分开 xff0c 不能混合在一起执行 2 为什么DDL语句