SqlServerではDDL(create文等)をロールバックすることが出来る

SqlServerではDDLロールバックできてしまう。

select * from TestTbl;	// テーブル未存在エラー

begin transaction;
create table TestTbl(col1 int);
select * from TestTbl;	// 正常終了
rollback;

select * from TestTbl;	// テーブル未存在エラー