При использовании MySQL START TRANSACTION и MySQL принимает решение об откате - в случае, если таблица имеет столбец AUTO_INCREMENT - уменьшается ли столбец ... во время отката?
Или надо?
У меня возникают некоторые проблемы, когда данные транзакции правильно откатываются, но похоже, что таблица была автоматически увеличена, а не уменьшена при откате.
# BOTH TABLES START OUT EMPTY // TABLE1 ID is **auto_increment**
START TRANSACTION;
INSERT INTO `TABLE1` (`ID` ,`NAME`) VALUES (NULL , 'Ted'); # MySQL TABLE1 **ID** is Auto incremented to 1
INSERT INTO `TABLE2` (`ID` ,`WRONGVALUE`) VALUES (NULL , 'some value'); # error. This TRANSACTION will not succeed
COMMIT; # Because of the error - this TRANSACTION is now rolled back and Ted is NOT added
Поскольку MySQL будет автоматически увеличивать идентификатор в первой таблице, независимо от того, завершилась ли транзакция успешно или неудачно, является ли это стандартной практикой для самостоятельного уменьшения размера таблицы?