首页 新闻 会员 周边 捐助

Sql try catch return

0
悬赏园豆:10 [已关闭问题] 关闭于 2008-11-29 09:04

在SQL中使用TRY CATCH ,抓到错误时,想返回错误号,可是发现却无法获得RETURN的值,提示为NULL,不知道什么原因?????????

------------------------------------SQL-------
ALTER PROCEDURE testingOfReturn
 @Val INT
AS
DECLARE @RESULT INT
SET @RESULT=0
BEGIN TRY
    -- Generate a divide-by-zero error.
    SELECT 1/0;
END TRY
BEGIN CATCH
    --SELECT @RESULT=ERROR_NUMBER();
 --SELECT @RESULT
 RETURN @Val
END CATCH;
--RETURN @RESULT
GO
-------------------------------------------C#

SqlParameter[] para = new System.Data.SqlClient.SqlParameter[2];
        para[0] = new SqlParameter("@Val", SqlDbType.Int);
        para[0].Value = 2;
        para[1] = new SqlParameter("@result", SqlDbType.Int);
        para[1].Direction = ParameterDirection.ReturnValue;
        using (SqlDataReader dr = SqlHelper.ExecuteReader(CommandType.StoredProcedure, "testingOfReturn", para))
        {
            Response.Write(para[1].Value.ToString());
        }

 

----------------------------------------结果:para[1].Value=null

155144的主页 155144 | 初学一级 | 园豆:192
提问于:2008-11-25 16:32
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册