Catch exp As Data.SqlClient.SqlException
     textbox1.text=  exp.message       
 End Try

解决方案 »

  1.   

    我想要的不是出错处理的message,而是在存储过程中通过RaiseError出来的message.
      

  2.   

    create procedure aaa
    asdeclare @ReturnError int
    update bb .....................
    select @ReturnError = @@error 
        if @ReturnError<>0
    begin
        return(@ReturnError) 
    end
    return(0)
    在定义调用存储过程时定义一个返回值来接收该错误
      

  3.   

    return @@error
    或者
    if @@error<>0
    select @@error AS error
    return(0)
      

  4.   

    sql server 上的 raiserror 经过ado.net翻译后会转化成SqlException然后抛出所以在asp.net上,肯定是有异常的了。
    try
    {
    cmd.ExecuteNonQuery();//这里抛出异常
    Label1.Text="OK";//这里不会执行
    }
    catch(SqlException x)
    {
    //转到这里执行
    Label1.Text=x.Message;
    }
      

  5.   

    ...
    Parm = cmd.Parameters.Add("@OutputParm", OleDbType.VarChar, 28);
    Parm.Direction = ParameterDirection.Output;SqlDataReader rs = cmd.ExecuteReader();
    sting sMessage=cmd.Parameters["@OutputParm"].Value;