InnoDB更新MyISAM和InnoDB表的事务的行为

问题描述:

我在本网站上阅读了大部分示例InnoDB,但我不知道InnoDB的行为。InnoDB更新MyISAM和InnoDB表的事务的行为

至于我发现

START TRANSACTION; 

正在申报,这是一个交易的连接。直到这里才行。 现在我有3个表:

  • TBL1与InnoDB引擎更新
  • tbl2的MyISAM引擎
  • TBL3 InnoDB的

顺序:

SET AUTOCOMMIT=0 
START TRANSACTION; 
UPDATE tbl2 SET column=1 WHERE (SELECT clumn FROM tbl WHERE column2=1); 
UPDATE tbl3 SET column=1; 
Rollback; 

会发生在MyISAM什么表是回滚还是只有tbl3和tbl1会回滚?

MyISAM不知道有关事务的任何信息,也无法回滚更改。

所以如果你回滚,tbl3的变化将被丢弃,但tbl2的变化将保持不变。