SQL Server 数据库回滚和抛错

SQL Server 数据库抛错和全过程回滚,代码如下

SET NOCOUNT ON;
	declare @errorMsg varchar(max)
	begin try
		SET XACT_ABORT ON
		BEGIN TRANSACTION

		raiserror('报错:该身份证号码在[%s]是在职状态!',16,1,@companyName)
		raiserror('报错:该身份证号码在入职公司考勤系统已在职,无法入职。',16,1)	
		COMMIT
	end try
	begin catch
		IF @@TRANCOUNT > 0 ROLLBACK
		DECLARE @ErrMsg nvarchar(MAX), @ErrSeverity int
		SELECT @ErrMsg = ERROR_MESSAGE(),
				@ErrSeverity = ERROR_SEVERITY()
		RAISERROR(@ErrMsg, @ErrSeverity, 1)
	end catch
相关推荐
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页