关于数据库引擎为MyISAM ,但是却错误使用了事务语句。

1、创建表时指定了引擎为MyISAM。

2、某些操作为了提高效率,使用了事务提交。

3、MyISAM不支持事务,但是事务语句没有失败。

原因:当你在 MyISAM 表上执行包含 START TRANSACTION;INSERT INTO ...;COMMIT; 的语句时,这些语句本身在语法上是正确的,因此 MySQL 会正常执行这些命令。INSERT INTO ...; 语句会立即执行并影响表,而 START TRANSACTION;COMMIT; 虽然被执行,但对于 MyISAM 表实际上没有任何作用,它们不会产生事务控制的行为。因此,即便是在 MyISAM 表上,这样的命令序列也会"成功"执行,但成功的含义仅限于语法上的正确和 INSERT 操作的完成,并不意味着事务被正确处理。

如果你需要事务支持,建议使用支持事务的存储引擎,如 InnoDB。InnoDB 是 MySQL 的默认存储引擎,它提供了完整的 ACID 事务支持,适用于需要高可靠性和事务处理特性的应用场景。

相关推荐
万事大吉CC1 小时前
mysql单表查询·3
数据库·mysql
bin91532 小时前
【EXCEL数据处理】000010 案列 EXCEL文本型和常规型转换。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来,方便查看。
大数据·数据库·信息可视化·数据挖掘·数据分析·excel·数据可视化
Miqiuha2 小时前
lock_guard和unique_lock学习总结
java·数据库·学习
一 乐3 小时前
学籍管理平台|在线学籍管理平台系统|基于Springboot+VUE的在线学籍管理平台系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习
Java探秘者7 小时前
Maven下载、安装与环境配置详解:从零开始搭建高效Java开发环境
java·开发语言·数据库·spring boot·spring cloud·maven·idea
2301_786964367 小时前
3、练习常用的HBase Shell命令+HBase 常用的Java API 及应用实例
java·大数据·数据库·分布式·hbase
阿维的博客日记8 小时前
图文并茂解释水平分表,垂直分表,水平分库,垂直分库
数据库·分库分表
wrx繁星点点9 小时前
事务的四大特性(ACID)
java·开发语言·数据库
小小娥子9 小时前
Redis的基础认识与在ubuntu上的安装教程
java·数据库·redis·缓存
DieSnowK9 小时前
[Redis][集群][下]详细讲解
数据库·redis·分布式·缓存·集群·高可用·新手向