Ответ 1
В SQL Server Management Studio включен принудительный фиксатор, поэтому все выполняемые команды неявно совершаются.
Это может быть страшно, если вы исходите из фона Oracle, где по умолчанию используется не то, что команды автоматически выполняются, но это не так много проблемы.
Если вы все еще хотите использовать ad-hoc транзакции, вы всегда можете выполнить
BEGIN TRANSACTION
в SSMS, и система ожидает, что вы зафиксируете данные.
Если вы хотите воспроизвести поведение Oracle и начать неявную транзакцию, всякий раз, когда выдается какой-либо DML/DDL, вы можете установить флажок SET IMPLICIT_TRANSACTIONS в
Tools -> Options -> Query Execution -> SQL Server -> ANSI