declare @err_msg varchar(1000); --创建一个提示变量 set xact_abort on --如果产生错误自动回滚 begin try begin tran --开始事务 begin begin --需要执行的语句内容 insert into Users(UserName,PassWord) values(1,'zhangsan','123456') end end commit tran --提交事务 end try begin catch rollback transaction; --回滚事物 select @err_msg=ERROR_MESSAGE() --返回完整的错误信息 raiserror (@err_msg,16,1) --抛出错误 return; end catch;