我能够在下面的SQL Server 2008 R2中创建存储过程,但现在我遇到了问题,因为我需要以存储过程将使用事务的方式执行此操作并检查错误。插入声明。找到错误后 - 事务应回滚,不应提交任何内容。任何帮助将不胜感激。
使用Northwind 走 CREATE PROC spEmployee @EmployeeID int 如 SELECT * FROM employees WHERE EmployeeID =''+ @ EmployeeID +'' 走 EXEC spEmployee @ EmployeeID = 2 GO
CREATE PROC spEmployee @EmployeeID int
AS 开始交易
SELECT * FROM employees WHERE EmployeeID =''+ @ EmployeeID +''
GO EXEC spEmployee @ EmployeeID = 2
GO IF @@ ERROR<> 0
BEGIN
ROLLBACK
RAISERROR('EXECUTE后的事务计数表示BEGIN和COMMIT语句的数量不匹配。前一个计数= 1,当前计数= 2.',16,2)
RETURN
END
COMMIT
答案 0 :(得分:0)
首先在SQL2005中向上阅读try catch块。您在此处使用SQL 2000错误处理。在线SQL书籍对于您需要的信息非常有用。