如题,知道的大侠指教下哦,附上代码,并简单的说明,谢啦
------最佳解决方案--------------------
password == "") //没有输入用户名或者密码给予提示 { MessageBox.Show("请输入完整的用户名和密码", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { string connString = @"Data Source=.\SQLEXPRESS;Initial Catalog=Book;Integrated Security=True"; SqlConnection connection = new SqlConnection(connString); //连接到引入的数据库 connection.Open(); // 打开数据库连接 string sql = String.Format("select count(*) from [User] where workerno='{0}'and password='{1}' and level= '{2}'", userNo, password, levels); //获取 用户名和密码匹配的行的数量的SQL语句 SqlCommand command = new SqlCommand(sql, connection); //创建 Command 对象 int num = (int)command.ExecuteScalar(); //执行查询语句,返回匹配的行数 if (num > 0) //如果有匹配的行,则表明用户名、密码和权限正确 { MessageBox.Show("欢迎进入图书仓库管理系统!", "登录成功", MessageBoxButtons.OK, MessageBoxIcon.Information); this.Hide(); //隐藏登录窗体 MainFrm mainForm = new MainFrm();// 创建主窗体对象 if (levels == "普通管理员") //如果是普通管理员登录,怎不能使用员工信息的功能 { mainForm.levels1(); //调用主函数中自己定义的函数(不能使用员工信息的供能) } else //如果是特权管理员 { mainForm.levels2(); //可以使用员工信息功能,调用自己定义的函数 } mainForm.transmit(txtNo.Text); //将员工编号放进主窗体,transmit()是主窗体的函数 mainForm.ShowDialog(); // 显示窗体 this.Close(); // 显示窗体执行完毕后,登录窗体关闭 } else //没有匹配的行,表明输入的用户名、密码或者输入的权限错误不正确 { if (i == 0) //当i=0时,表明已经三次尝试登录 { MessageBox.Show("已三次输入错误,登录界面关闭!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); this.Close(); //关闭登录窗体 } else //输入错误,但是没有到三次 { MessageBox.Show("您输入的用户名或密码错误或者选择了错误的登录权限,还有" + i + " 次机会!", "登录失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); i = i - 1; //将i的值减1 } } connection.Close();// 关闭数据库连接 } }