他のRDBを経験してから SQL Server を使っている人は要注意。 SQL Server は他のRDBでは考えられない強力な ROLLBACK を実装しています。 知らないとハマりますが、知っていると効率化できる事もあります。 まずは、公式情報。 「トランザクションで使用できる Transact-SQL ステートメント」 http://msdn.microsoft.com/ja-jp/library/ms191544.aspx (実際には使えないステートメントが載っています) ここで TRUNCATE TABLE は使える事になっています。 「使えるけど DDL だし ROLLBACK しても戻らないんじゃないの?」と思った方は実験してみて下さい。 適当な test01 というテーブルを作ってデータを用意して、 --------------------- begin tran; se