VS2005调用SQL SERVER2005中带输出参数的存储过程

1.SQL SERVER2005存储过程:usp_getStuInfo

alter proc usp_getStuInfo
@sName nvarchar(20),@dept char(20) output
as
select @dept=dept from student s
where s.sname=@sName

 2.VS中调用存储过程usp_getStuInfo实例:

 

代码
    protected void btnProc_Click(object sender, EventArgs e)
    {
        
string dept;        
        SqlConnection con 
= new SqlConnection("server=.;database=school;uid=sa;pwd=;");
        con.Open();
        SqlCommand cmd 
= new SqlCommand("usp_getStuInfo", con);
        cmd.CommandType 
= CommandType.StoredProcedure;
        cmd.Parameters.Add(
"@sName", SqlDbType.NVarChar,20);
        
//这里对于带输出参数的,在VS中添加变量时需要三个参数的重载函数Add
        cmd.Parameters["@sName"].Value = "钱乐";
        cmd.Parameters.Add(
"@dept",SqlDbType.NVarChar,20);
        cmd.Parameters[
"@dept"].Direction = ParameterDirection.Output;
        cmd.ExecuteReader();
        dept 
= cmd.Parameters["@dept"].Value.ToString();
        con.Close();
        
this.Label1.Text = dept;
    }

 

 

posted on 2009-12-11 15:16  虞山居士  阅读(493)  评论(0)    收藏  举报