当前位置:编程学习 > C#/ASP.NET >>

ado.net获取存储过程的返回值

答案:     --------------------------------------------
  假设有存储过程如下:
  ---------------------------------------------
  
  CREATE proc sp_uptmp @tmpName varchar(50),@srcPos varchar(255)
  as
  
  Begin TRAN
   insert into t_template values(@tmpName,@srcPos)
  COMMIT
  
  return isnull(@@identity,0)
  GO
  
  
  ------------------------------------------------------------
  在 ado.net 里面获取返回值的方法为(c#):
  ------------------------------------------------------------
   SqlConnection dbconn = new SqlConnection(connStr);
   SqlCommand cmd = new SqlCommand("sp_uptmp",dbconn);
   cmd.CommandType = CommandType.StoredProcedure;
  
   SqlParameter tmpName = cmd.Parameters.Add("@tmpName",SqlDbType.VarChar);
   SqlParameter srcPos = _cmd.Parameters.Add("@srcPos",SqlDbType.VarChar);
   SqlParameter rtnval = cmd.Parameters.Add("rval",SqlDbType.Int);
  
   tmpName.Direction = ParameterDirection.Input;
   srcPos.Direction = ParameterDirection.Input;
   rtnval.Direction = ParameterDirection.ReturnValue;
  
   tmpName.Value = "";
   srcPos.Value = "";
   dbconn.Open();
   cmd.ExecuteNonQuery();
   dbconn.Close();
  
   tmpid = (int)rtnval.Value; //此处即为返回值
  
  
  
  
  
  
  

上一个:ADO.net中数据库连接方式
下一个:在VB.NET中使用MS Access存储过程

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,