• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 非事务表的回滚失败

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

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

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

    如果您不是故意在事务内混合事务表和非事务表,则此消息的最可能原因是您认为是事务表实际上不是。如果您尝试使用不受mysqld服务器支持(或已被启动选项禁用)的事务性存储引擎创建表,则会发生这种情况。如果mysqld不支持存储引擎,它将改为将表创建为非MyISAM事务表。

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

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

    请参见“ SHOW TABLE STATUS语句”和“ SHOW CREATE TABLE语句”。

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

    SHOW ENGINES;
    

    有关完整详细信息,请参见“ SHOW ENGINES语句”。