R5q7p 2015-01-10 08:06 采纳率: 100%
浏览 2637
已采纳

C#如何将combobox里面我选择的项和表内的一个数值比对,如果相符则进入对应的页面。

我们数据库课程设计做学生成绩管理系统。
我现在在做登录界面的代码,对应的表结构是user_name,user_pwd,status遇到了一个问题:就是只要我输入的用户名和密码正确,在combobox里面选择管理员就进入管理员页面,选择学生就进入了学生页面。表里面的status是标注这个账号是什么角色,想在代码里加上一个条件就是希望能将combobox里面我选择的项和表内的status比对,如果相符则进入对应的页面。

下面是我登录部分的代码:
public bool CheckInput()
{
bool flag=false;
if(string.IsNullOrEmpty(this.用户名.Text.Trim()))
{
MessageBox.Show("用户名不能为空,登录失败","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
else if(string.IsNullOrEmpty(this.密码.Text.Trim()))
{
MessageBox.Show("密码不能为空,登录失败","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
else
{
flag=true;
}
return flag;
}
///
/// 登录按钮点击事件
///
///
///
private void 登录_Click(object sender, EventArgs e)
{
if (CheckInput())
{
//无密码建立连接SQL数据库对象
string connStr = "Data Source=PC-20140923RVHL\SQL2005;Initial Catalog=Stu_mark_MS;Integrated Security=True";
//创建数据库连接对象
SqlConnection conn = new SqlConnection(connStr);
try
{
//打开数据库连接
conn.Open();
//创建SQL语句
string sql = "select user_name,user_pwd,status from user_info where user_name='" + 用户名.Text + "'and user_pwd='" + 密码.Text + "'";
//创建命令对象
SqlCommand comm = new SqlCommand(sql, conn);//执行SQL命令
comm.CommandText = sql;
comm.Connection = conn;
SqlDataReader ada = comm.ExecuteReader();
if (ada.Read())
{
if (this.身份.SelectedItem.ToString() == "管理员"&& status=="管理员")
{
//创建管理员信息窗体实例
admin admin = new admin();
//打开管理员信息窗体
admin.Show();
}
if (this.身份.SelectedItem.ToString() == "学生")
{
//创建学生信息窗体实例
student student = new student();
//打开学生信息窗体
student.Show();
}
}
else
{
MessageBox.Show("用户名密码有误,请重新输入");
}
}
catch (Exception ex)
{
MessageBox.Show("出现异常:" + ex.Message);
}
finally
{
conn.Close();
}
}

  • 写回答

2条回答 默认 最新

  • 热冰棍 2015-01-10 08:29
    关注

    select user_name,user_pwd,status from user_info where user_name='" + 用户名.Text + "'and user_pwd='" + 密码.Text + "' and status =‘" +combobox.text+",";
    然后直接饭后受影响行数 comm.ExecuteNonQuery();然后判断行数>0就竟然combox对应的界面否则提示错误

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?
  • ¥15 电磁场的matlab仿真
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面