本人最近初学C#,主要在看winfrom。最近做一个简单的学生管理系统,遇到点小问题。是用ACCESS数据库创建的数据表。一下为几个空间功能无法实现的纠结问题。
第一个:一个排序按钮,前面配合两个radioButton控件,一个是升序,一个是降序,想通过这个按钮按升序或降序来排列dataGridView控件的通过数据库引入的表中数据的顺序,代码如下:            //对学号进行排序并返回数据
            string orderstr = "";
            if (radioButton1.Checked)
                orderstr = "学号" + "ASC";
            else
                orderstr = "学号" + "DESC";
            mydv.Sort = orderstr;第二个:也是在同一个窗体中,一个查询按钮控件,想通过前面的查询条件,在dataGridView中显示符合条件的数据。每次都是报错,说LIKE指令无法执行。代码如下:
//对数据进行检索
            string constr = "";
            constr = "(学号 like'%" + textBox1.Text + 
                "%')" + "AND(姓名 like '%" + textBox2.Text + "%')" + "AND(性别 like'%" + 
                comboBox1.Text + "%')" + "AND(专业 like'%" + comboBox3.Text + "%')";
            mydv.RowFilter = constr;
PS:mydv在最开始已经声明过 希望得到帮助谢谢!

解决方案 »

  1.   

    注意空格  constr = " (学号 like '%" + textBox1.Text +  
      "%')" + " AND ( 姓名 like '%" + textBox2.Text + "%')" + " AND ( 性别 like'%" +  
      comboBox1.Text + "%')" + " AND ( 专业 like '%" + comboBox3.Text + "%')";
      mydv.RowFilter = constr;
      

  2.   

    你这个东西串到SQL里不就成了一个整体了?【学号ASC】
    起码也应该是 order by 学号 asc ,学号和asc之间要有空格吧?
      

  3.   


    好像还是不可以 
    每次报错都是这个 无法在 System.Int32 和 System.String 上执行“Like”操作。 指向的这一行: mydv.RowFilter = constr;