我有这个存储过程:如何找出存储过程的哪个部分给我一个错误?
CREATE PROCEDURE sp_purchase_test
@AdminTestId int,
@PurchaseDate DATETIME OUTPUT,
@RC INT OUTPUT,
@UserId INT
AS
BEGIN
BEGIN TRY
DECLARE @UserTestId INT;
INSERT INTO dbo.UserTest
(
AdminTestId,
PurchaseDate,
UserId,
Sequence
)
SELECT AdminTestId,
@PurchaseDate,
@UserId,
1
FROM AdminTest
WHERE AdminTestId = @AdminTestId
SET @UserTestId = SCOPE_IDENTITY()
INSERT INTO dbo.UserTestQuestion
(
UserTestId,
QuestionNumber,
QuestionUId,
UserId
)
SELECT @UserTestId,
ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) AS [QuestionNumber],
QuestionUId,
@UserId
FROM AdminTestQuestion
WHERE AdminTestId = @AdminTestId
END TRY
BEGIN CATCH
SET @RC = 0
RETURN
END CATCH
SET @RC = 1
RETURN
END
我打电话这样说:
DECLARE @PurchaseDate DATETIME
DECLARE @RC INT
exec sp_purchase_test 119, @PurchaseDate OUT, @RC OUT, 4
SELECT @RC
它返回一个“0”,但我看不出有什么失败。如何调试这个给我,为什么它返回一个0
取出TRY/CATCH?或者只是打印错误消息? – DavidG 2014-10-16 15:39:38
http://msdn.microsoft.com/en-us/library/ms175976.aspx这是文档:查看有关查看错误内容的部分。 – 2014-10-16 15:43:13