程序中存储过程的使用

来源:互联网 发布:淘宝支付限额怎么使用 编辑:程序博客网 时间:2024/05/24 02:37

 SqlCommand cmd =new SqlCommand("proGetEmpPassword", cn);
   cmd.CommandType = CommandType.StoredProcedure;
  
   SqlParameter paramLoginName=new SqlParameter("@LoginName", SqlDbType.Char, 20);
   paramLoginName.Value = strLoginName;
   cmd.Parameters.Add(paramLoginName);

   SqlParameter paramPassword=new SqlParameter("@Pword", SqlDbType.VarChar, 50);
   paramPassword.Direction = ParameterDirection.Output;
   cmd.Parameters.Add(paramPassword);

   SqlParameter paramReturn=new SqlParameter("@ReturnValue", SqlDbType.Int);
   paramReturn.Direction = ParameterDirection.ReturnValue;
   cmd.Parameters.Add(paramReturn);//在存储过程中为return @@rowcount,用                                                        来判断,区别select @orderId=@@identity

   string arPword ;

   try
   { 
    cn.Open();
         
    cmd.ExecuteNonQuery();

    if (Convert.ToInt32(paramReturn.Value) == 1)
              
     arPword = (paramPassword.Value).ToString();
    else

     return null;
    
   }
   catch
   { 
    return null;
   }
   finally
   {
    if (cn.State == ConnectionState.Open)
     cn.Close();
   }
     
   return arPword;
 
  }