私のテストテーブルには2つの列があります。
id int not null
somecolumn varchar(10))
今私のクエリを参照してください:
USE TRY
BEGIN TRANSACTION T1
INSERT INTO Test VALUES(7,'hi');
GO
INSERT INTO Test VALUES(8,'hi','ABC');
GO
PRINT @@ERROR
if @@ERROR>0
ROLLBACK TRANSACTION T1
ELSE
COMMIT TRANSACTION T1
2番目のクエリが間違っていることがわかっているので、トランザクションをロールバックしたいのですが、最初のクエリが挿入され、次のメッセージが表示されます。
(1 row(s) affected)
Msg 213, Level 16, State 1, Line 1
Column name or number of supplied values does not match table definition.
213