Are nested transactions allowed in MySQL?
No, but InnoDB supports SAVEPOINTS. You can do the following: CREATE TABLE t_test (id INT NOT NULL PRIMARY KEY) ENGINE=InnoDB; START TRANSACTION; INSERT INTO t_test VALUES (1); SELECT * FROM t_test; id — 1 SAVEPOINT tran2; INSERT INTO t_test VALUES (2); SELECT * FROM t_test; id — 1 2 ROLLBACK TO tran2; SELECT * FROM … Read more