文档主页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


B.3.4.5 非事务表回滚失败

如果您在尝试执行 ROLLBACK 时收到以下消息,则表示您在事务中使用的一个或多个表不支持事务。

Warning: Some non-transactional changed tables couldn't be rolled back

这些非事务表不受 ROLLBACK 语句的影响。

如果您没有故意在事务中混合使用事务表和非事务表,则出现此消息的最可能原因是您认为是事务表的表实际上并非如此。如果您尝试使用您的 mysqld 服务器不支持的事务存储引擎(或者通过启动选项禁用了该引擎)来创建表,则会出现这种情况。如果 mysqld 不支持存储引擎,则它会将表作为 MyISAM 表创建,而 MyISAM 表是非事务性的。

您可以使用以下任一语句检查表的存储引擎。

SHOW TABLE STATUS LIKE 'tbl_name';
SHOW CREATE TABLE tbl_name;

请参阅 第 15.7.7.37 节,“SHOW TABLE STATUS 语句”第 15.7.7.11 节,“SHOW CREATE TABLE 语句”

要检查您的 mysqld 服务器支持哪些存储引擎,请使用以下语句。

SHOW ENGINES;

有关完整详细信息,请参阅 第 15.7.7.17 节,“SHOW ENGINES 语句”