try
  {
string str="server=. ; database=usrer; user=sa;pwd= ";
//String  info="select * from  where info='0'  names=@names";
SqlConnection  conn = new SqlConnection(str);
    string   data="select * from userinfo  where  names=@names and passwords=@passwords and  role=@role ";
    conn.Open();
   SqlCommand cmd = new SqlCommand(data,conn);    cmd.Parameters.Add("@names",names);
   cmd.Parameters.Add("@passwords",passwords);
   cmd.Parameters.Add("@role",role);
   SqlDataReader sd;
   sd=cmd.ExecuteReader();
   //sde.Read();
if  (sd.Read())
{   
MessageBox.Show("登陆成功","提示");
//SqlCommand  scup = new SqlCommand(update,conn);
//SqlDataAdapter ds = new SqlDataAdapter();

//scup.Parameters.Add("@names",names);
//ds.UpdateCommand=scup;
//DataSet dst= new DataSet();
//ds.Fill(dst,"userinfo"); 
// sde.Close(); //DataSet  dst =new 
string select="select * from userinfo";
SqlCommand cmnd = new SqlCommand(select,conn);
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand=cmd;
string  update ="update userinfo set info='1' where names=@names ";
cmnd = new SqlCommand(update,conn);
cmnd.Parameters.Add("@names",names);
sda.UpdateCommand=cmnd;
DataSet ds= new DataSet();
sd.Close();
sda.Fill(ds,"userinfo");  
man m=new man();
m.Show();
}  
else
{
MessageBox.Show("输入的用户名和密码有误","提示");
 }
 } 
catch(SqlException ex)
{
//;
MessageBox.Show("输入的用户名和密码或者角色有错误","提示");
MessageBox.Show(ex.Message);
MessageBox.Show(ex.ToString());
}
   原因?