首页 新闻 会员 周边

不显示窗体问题

0
悬赏园豆:10 [已解决问题] 解决于 2011-12-10 21:01
这是一个共用类
 1   public static SqlDataReader executereader(string sqlstr, params SqlParameter[] para)
2 {
3 SqlDataReader dr;
4 using (SqlConnection con=new SqlConnection(constr))
5 {
6 using (SqlCommand cmd=new SqlCommand(sqlstr,con))
7 {
8 foreach (SqlParameter p in para)
9 {
10 cmd.Parameters.Add(p);
11 }
12 con.Open();
13 dr = cmd.ExecuteReader();
14
15 }
16
17 }
18 return dr;
19 }
 
 现在这里是调用上面那个类,查找pwd 假如password表中有数据则让这个winform窗体不显示出来 该怎么写这里啊 
 1  private void setpwd_Load(object sender, EventArgs e)
2 {
3 string sqlstr = "select pwd from password";
4 // db.executereader(sqlstr,new SqlParameter[]{ new SqlParameter("@pwd",pwdtextBox.Text.Trim())});
5 if (db.executereader(sqlstr, new SqlParameter[] { new SqlParameter("@pwd", pwdtextBox.Text.Trim()) }).Read)
6 {
7
8 }
9
10
11
12
13 }
 
c#
小格调的主页 小格调 | 初学一级 | 园豆:107
提问于:2011-12-10 14:45
< >
分享
最佳答案
0

select pwd from password把这个sql语句写成select count(pwd) from password更容易实现你的要求。

收获园豆:10
悟行 | 专家六级 |园豆:12559 | 2011-12-10 15:07

嗯 那还有就是

   private void setpwd_Load(object sender, EventArgs e)
{
string sqlstr = "select pwd from password";
// db.executereader(sqlstr,new SqlParameter[]{ new SqlParameter("@pwd",pwdtextBox.Text.Trim())});
if (db.executereader(sqlstr, new SqlParameter[] { new SqlParameter("@pwd", pwdtextBox.Text.Trim()) }).Read)
{

}




}

那怎么让这个窗体不显示出来阿 这里怎么写啊

小格调 | 园豆:107 (初学一级) | 2011-12-10 15:10

@小格调: 得到从数据返回的结果,判断结果是否大于零,如果大于零就不显示窗体, 否则就显示窗体。

悟行 | 园豆:12559 (专家六级) | 2011-12-10 15:12

@小格调: 

MyConnection.Open(); OleDbCommand MyCmd=new OleDbCommand(MySQL,MyConnection); OleDbDataReader MyReader=MyCmd.ExecuteReader(); while(MyReader.Read()){ if(MyReader.GetInt32(0)>0){登陆验证成功,加入你的语句,如:new MainForm.Show();} } //关闭数据源 MyReader.Close(); MyCmd.Dispose(); MyConnection.Close();
悟行 | 园豆:12559 (专家六级) | 2011-12-10 15:18

@PursueZhang: 嗯 谢谢了

小格调 | 园豆:107 (初学一级) | 2011-12-10 21:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册