现在的位置: 首页 > 综合 > 正文

C#获取存储过程的Return返回值和Output输出参数值

2013年01月23日 ⁄ 综合 ⁄ 共 1470字 ⁄ 字号 评论关闭
[code language="c#"]1.获取Return返回值 


程序代码 
//存储过程 
//Create PROCEDURE MYSQL 
//    @a int, 
//    @b int 
//AS 
//    return @a + @b 
//GO 
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["LocalSqlServer"].ToString()); 
conn.Open(); 
SqlCommand MyCommand = new SqlCommand("MYSQL", conn); 
MyCommand.CommandType = CommandType.StoredProcedure; 
MyCommand.Parameters.Add(new SqlParameter("@a", SqlDbType.Int)); 
MyCommand.Parameters["@a"].Value = 10; 
MyCommand.Parameters.Add(new SqlParameter("@b", SqlDbType.Int)); 
MyCommand.Parameters["@b"].Value = 20; 
MyCommand.Parameters.Add(new SqlParameter("@return", SqlDbType.Int)); 
MyCommand.Parameters["@return"].Direction = ParameterDirection.ReturnValue; 
MyCommand.ExecuteNonQuery(); 
Response.Write(MyCommand.Parameters["@return"].Value.ToString()); 

2.获取Output输出参数值 


程序代码 
//存储过程 
//Create PROCEDURE MYSQL 
//    @a int, 
//    @b int, 
//    @c int output 
//AS 
//    Set @c = @a + @b 
//GO 
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["LocalSqlServer"].ToString()); 
conn.Open(); 
SqlCommand MyCommand = new SqlCommand("MYSQL", conn); 
MyCommand.CommandType = CommandType.StoredProcedure; 
MyCommand.Parameters.Add(new SqlParameter("@a", SqlDbType.Int)); 
MyCommand.Parameters["@a"].Value = 20; 
MyCommand.Parameters.Add(new SqlParameter("@b", SqlDbType.Int)); 
MyCommand.Parameters["@b"].Value = 20; 
MyCommand.Parameters.Add(new SqlParameter("@c", SqlDbType.Int)); 
MyCommand.Parameters["@c"].Direction = ParameterDirection.Output; 
MyCommand.ExecuteNonQuery(); 
Response.Write(MyCommand.Parameters["@c"].Value.ToString());
[/code]

抱歉!评论已关闭.