>[оверквотинг удален] >>> COMMIT; >>> SELECT * FROM test2 WHERE pnum=11; >>> Не могу понять почему транзакция не отменяет изменения если в одном из >>> запросов ошибка? >> Я давно работал с SQL, но возникает вопрос, почему Вы "не нахождение >> по WHERE" считаете за ошибку? Это нулевая выборка, которая может вовсе >> и не рассматриваться как ошибка. > А как в таком случае проверяют свои транзакции банки когда добавляют на > один счёт 100р и нужно одновременно списать с другого счёта 100р, > а если первая операция не прошла, то отменить все операции? А у них не mySQL(MariaDb) юзается, и обычно в транзакции входят и списание и добавление, если что-то не проходит она и откатывается... Т.е. там все начинается с begin transaction
|