首页 > 其他 > 详细

c#调用带输出参数的存储过程

时间:2014-09-03 16:33:36      阅读:228      评论:0      收藏:0      [点我收藏+]

CREATE PROCEDURE ProGetPWD  

   @username varchar(20),  

   @password varchar(20) OUTPUT  

AS  

BEGIN  

   SELECT @password = password   

   FROM Users   

   WHERE username = @username  

END  

 

 

string sql = "Data Source=.;Initial Catalog=Test;Integrated Security=True;";
using (SqlConnection conn = new SqlConnection(sql))
{
conn.Open();
SqlCommand cmd = conn.CreateCommand();
//设置要调用的存储过程的名称
cmd.CommandText = "GetuserPwd";
//指定SqlCommand对象传给数据库的是存储过程的名称而不是sql语句
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter userName = cmd.Parameters.Add(new SqlParameter("@userName", SqlDbType.VarChar, 20));
//指明"@userName"是输入参数
userName.Direction = ParameterDirection.Input;
//为@userName参数赋值
userName.Value = txtUserName.Text;
SqlParameter userPwd = cmd.Parameters.Add(new SqlParameter("@userPwd", SqlDbType.VarChar, 20));
//指明"@userPwd"是输出参数
userPwd.Direction = ParameterDirection.Output;
//执行
cmd.ExecuteNonQuery();
//得到输出参数的值,把赋值给name,注意,这里得到的是object类型的,要进行相应的类型轮换
string passwrod = Convert.ToString(cmd.Parameters["@userPwd"].Value);
MessageBox.Show(passwrod);

}

c#调用带输出参数的存储过程

原文:http://www.cnblogs.com/lschenblog/p/3953900.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!