日期:2014-05-18  浏览次数:20481 次

存储过程+事务中,如何返回值
SQL code

ALTER PROCEDURE [dbo].[YK_FeedBack_Add]
   @Title NVARCHAR(200),
   @Inputer NVARCHAR(50),
   @TheContent NTEXT,
   @Name NVARCHAR(20),
   @Age INT
AS
BEGIN
    BEGIN TRY
        BEGIN TRANSACTION
            INSERT INTO [YK_FeedBack](Title,Inputer,TheContent) 
              VALUES(@Title,@Inputer,@TheContent)
                            INSERT INTO [YK_User](Name,Age)
                              VALUES(@Name,@Age)
        COMMIT TRANSACTION
                  --希望成功返回1
        RETURN 1
    END TRY
    BEGIN CATCH
        IF @@ERROR > 0
            ROLLBACK TRANSACTION
                           --希望失败返回2
                           RETURN 2
    END CATCH
END




如上存储过程,希望成功时返回1,失败时,回滚操作并且返回2.

我记得 return、select、output都可以返回。求助三个返回的例子。

能提供三个返回例子并说明优缺点的人给满分,并立刻结贴。谢谢大家。

------解决方案--------------------
sql 联机丛书,查找‘create proc’,有实例