Navicat导入Sql文件至Mysql数据库,事务失效
Mysql 版本:8.0.39
Navicat 版本:17.x、16.x
结论:
Navicat 导入sql文件,事务不会生效,无论怎么设置
mysql.exe 导入sql文件,事务生效
测试
准备一张表 name约束不能为空,用于测试事务失败
CREATE TABLE `student` (`id` int NOT NULL AUTO_INCREMENT,`name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`age` int DEFAULT NULL,`class` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
Sql文件:transaction.sql,第三行数据会触发mysql约束
START TRANSACTION;
INSERT INTO student (name, age, class) VALUES ('张三', 18, '1班');
INSERT INTO student (name, age, class) VALUES ('李四', 19, '2班');
INSERT INTO student (name, age, class) VALUES (NULL, 20, '1班');
INSERT INTO student (name, age, class) VALUES ('赵六', 18, '3班');
INSERT INTO student (name, age, class) VALUES ('孙七', 19, '2班');
COMMIT;
Navicat 新建查询执行SQL 事务有效
Navicat 导入Sql文件 事务无效
可以看到,明明报错了,但是没有触发事务回滚。
清空数据库
mysql.exe 导入Sql文件 事务生效
这里直接用了Mysql官方管理工具,MySQL Workbench,内置使用mysql.exe客户端导入
表中无数据,事务回滚了
补充
建表脚本和插入脚本文章头部已经放出,有兴趣可以试试,
做技术一定要有一颗严谨的心态,我问过几个朋友大家竟然都默认觉得Navicat导入Sql文件时事务是生效的,都没做过测试。
阿里云DMS 导入sql事务是收费功能 2024-09-21
相关文章:

Navicat导入Sql文件至Mysql数据库,事务失效
Mysql 版本:8.0.39 Navicat 版本:17.x、16.x 结论: Navicat 导入sql文件,事务不会生效,无论怎么设置 mysql.exe 导入sql文件,事务生效 测试 准备一张表 name约束不能为空,用于测试事务失败…...

篮球运动场景物体检测系统源码分享
篮球运动场景物体检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Comp…...

Docker实操:安装MySQL5.7详解(保姆级教程)
介绍 Docker 中文网址: https://www.dockerdocs.cn Docker Hub官方网址:https://hub.docker.com Docker Hub中MySQL介绍:https://hub.docker.com/_/mysql 切换到“Tags”页面,复制指定的MySQL版本拉取命令,例如 :…...
git reflog
git reflog 是一个非常有用的命令,可以让你查看和回滚到 Git 仓库中的任何之前的状态。reflog 记录了你在 Git 仓库中的所有 HEAD 移动历史。下面是使用 reflog 回滚到之前状态的步骤: 1. 查看 Reflog 首先,你需要查看 reflog 记录…...

使用 Vue 3 和 TypeScript 实现带打字效果的仿 AI 分析展示组件
在这篇博客中,我将分享如何用 Vue 3 和 TypeScript 实现一个带打字效果的 AI 分析展示组件。该组件具有如下功能: 动态打字效果:模拟打字机逐步显示内容。自动滚动:内容超出容器高度时自动滚动到最新位置。 1. 组件实现需求 我…...

数据清洗-缺失值填充-K-NN算法(K-Nearest Neighbors, K-NN算法)
目录 一、安装所需的python包二、采用K-NN算法进行缺失值填充2.1代码(完整代码关注底部微信公众号获取)2.2以某个缺失值数据进行实战2.2.1代码运行过程截屏:2.2.2填充后的数据截屏: 三、K 近邻算法 (K-Nearest Neighbors, KNN) 介…...

爬虫----webpack
目录 一. 什么是webpack 出现的原因:同名函数 概念: 特征:大量缩进 webpack的格式 简单的webpack格式: 详细的webpack格式: 几个参数的运用 1. webpack数组形式 2. webpack对象格式 3.多个js文件打包 打印要扣的代码 …...
Spring Mybatis PageHelper分页插件 总结
1.简介 使用分页插件可以帮助我们自动分页,不用手动在写sql的分页逻辑。 2.配置步骤 在pom.xml中添加依赖 <dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>5.1.11<…...

9、等保测评介绍
数据来源:9.等保测评介绍_哔哩哔哩_bilibili 信息系统等级测评 信息系统等级测评是测评机构依据国家信息安全等级保护制度的规定,按照相关管理规范和技术标准,对未涉及国家秘密的信息系统的安全等级保护状况进行检测评估的活动。 等级测评…...

解决Gson将长数字( json字符串)转换为科学记数法格式
Gson(又称Google Gson)是Google公司发布的一个开放源代码的Java库,主要用途为序列化Java对象为JSON字符串,或反序列化JSON字符串成Java对象。 依赖 Gradle: dependencies {implementation com.google.code.gson:gson:2.11.0 }…...
php环境搭建教程
PHP环境搭建教程 在构建和开发PHP应用程序时,搭建一个稳定、高效的PHP环境是基础且关键的一步。本教程将详细介绍如何在不同操作系统(Windows和Linux)上搭建PHP环境,包括Apache服务器的安装与配置、PHP的安装与配置、MySQL的安装…...

测试ASP.NET Core的WebApi项目调用WebService
虚拟机中部署的匿名访问的WebService,支持简单的加减乘除操作。本文记录在WebApi中调用该WebService的方式。 VS2022创建WebApi项目,然后在解决方案资源管理器的Connected Services节点点右键,选择管理连接的服务菜单。 点击下图圈红处…...

【用Java学习数据结构系列】对象的比较(Priority Queue实现的前提)
看到这句话的时候证明:此刻你我都在努力 加油陌生人 个人主页:Gu Gu Study 专栏:用Java学习数据结构系列 喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹 喜欢的话可以点个赞谢谢了。 作者ÿ…...
快手视频怎么保存到相册?(详细操作)
随着短视频的流行,快手已经成为越来越多人日常生活的一部分。无论是搞笑片段、旅行记录,还是生活点滴,用户们每天都会在快手上浏览到大量有趣的视频。有时候,我们会遇到特别想保存的视频,想要分享到朋友圈,…...

为什么 ECB 模式不安全
我们先来简单了解下 ECB 模式是如何工作的 ECB 模式不涉及链接模式,所以也就用不着初始化向量,那么相同的明文分组就会被加密成相同的密文分组,而且每个分组运算都是独立的,这也就意味着可以并行提高运算效率,但也正是…...

『功能项目』事件中心处理怪物死亡【55】
本章项目成果展示 我们打开上一篇54回调函数处理死亡的项目, 本章要做的事情是用事件中心处理怪物死亡后的逻辑 首先打开之前事件中心脚本(不做更改,调用即可): using System.Collections.Generic; using UnityEngine…...

一个安卓鸿蒙化工具
DevEco插件,为已有安卓项目鸿蒙化加速。 目前支持: 1、安卓Vector Assets转svg; 2、json转ets model; 3、kotlin model转ets model; 下载地址:andtoharplugin1.1.0 安装: deveco插件安装选硬…...
PyQt5库学习之QFileDialog.getExistingDirectory函数
PyQt5库学习之QFileDialog.getExistingDirectory函数 一、简介 QFileDialog.getExistingDirectory 是 PyQt5 中的一个函数,它提供了一个标准的目录选择对话框,允许用户选择一个已存在的目录。这个函数是 QFileDialog 类的一部分,通常用于打开…...
AUTOSAR_EXP_ARAComAPI的5章笔记(9)
☞ 返回总目录 5.4 骨架类(Skeleton Class) 骨架类是由AUTOSAR 元模型的服务接口描述(SI description)生成的。ara::com对生成的骨架类的接口进行了标准化。自适应平台(AP)产品供应商的工具链将生成一个完…...
京东-第2题-撞车
Powered by:NEFU AB-IN Link 文章目录 京东-第2题-撞车题意思路代码 京东-第2题-撞车 题意 一条单向单车道的道路上有n辆车,第i辆车位于 xi;,速度大小为 vi。 显然,如果车辆保持此速度行驶下去,在大多数情况下都会发生碰撞。 现…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
生成 Git SSH 证书
🔑 1. 生成 SSH 密钥对 在终端(Windows 使用 Git Bash,Mac/Linux 使用 Terminal)执行命令: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" 参数说明: -t rsa&#x…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...

C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...