Можешь объяснить роли и различия между командами COMMIT и ROLLBACK в SQL-транзакциях, и как SAVEPOINT расширяет их функциональность? — ДейлиПреп