这个至少一个参数没有被赋值该如何修改呀


 private void button1_Click(object sender, EventArgs e)
        {
            DBConnect();
            oledbCon.Open();
            OleDbDataAdapter da = new OleDbDataAdapter("select textBox1 as 学号 from 学生基本信息 where textBox1 = '" + textBox1.Text + "'", oledbCon);
            DataSet ds = new DataSet();
            da.Fill(ds);
            dataGridView1.DataSource = ds.Tables[0];
            oledbCon.Close();

        }
老师,这个查询代码哪里错了呀,搜索功能要把表里的所有数据名称都输进去吗
 

其实我一般分开写,方便调试。这样可以打印 sql内容,以条纯SQL语句,一眼就可以看出问题。

 

String sql = "select * from 学生基本信息 where 学号 = '" + textBox1.Text + "'";

OleDbDataAdapter da = new OleDbDataAdapter(sql, oledbCon);

 

 

或者为了减少内存碎片,我一般写:

String sql = String.Format("select * from 学生基本信息 where 学号 = '{0}'", textBox1.Text);

OleDbDataAdapter da = new OleDbDataAdapter(sql, oledbCon);

textBox1.Text + "'" 里两双引号中间少了单引号

textBox1.Text + "'‘ "

哦,还有问题。SELECT后写的时学号,造成语法错误,这里放星号号了,选择所有字段。还有WHEE后应该时学号字段,因为数据库没有字段名textBox1。 还有最后双引号里只要以各单引号。下面这样应该就可以了。

 OleDbDataAdapter da = new OleDbDataAdapter("select * from 学生基本信息 where 学号 = '" + textBox1.Text + "'", oledbCon);