datagridview中数据是我导入的access数据表,通过在textbox中输入内容,点击button查询,datagridview行列变黄色显示,或者只显示满足要求的行列,datagridview有两列为水位和库容
private void button3_Click(object sender, EventArgs e)
        {OleDbConnection aConnection = new OleDbConnection("Provider=Microsoft.Jet.OlEDB.4.0;Data source=F:\\平台\\mainform\\my_db.mdb");
        try
        {
            string strSql = "Select * From 水位库容  where 水位 ='" + this.textBox1.Text + "'";
            aConnection.Open(); 
            OleDbDataAdapter dadapter = new OleDbDataAdapter();
          dadapter.SelectCommand  = new OleDbCommand(strSql, aConnection);
            DataSet dset = new DataSet();
            dadapter.Fill(dset);
            aConnection.Close();
            dataGridView1.DataSource = dset.Tables[0];
        }
        catch (Exception ex)
        { MessageBox.Show("错误:" + ex.Message); }        finally
        {
            if (aConnection != null)
                aConnection.Close();
        } 
        }
运行之后,没有反应

解决方案 »

  1.   

    运行之后,是什么没反应,是dataGridView1没有东西出现吗?
      

  2.   

    try
                {                string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = Socut.mdb";
                    OleDbConnection myConn = new OleDbConnection(strCon);
                    string strCom = " SELECT * FROM socut_user ";                myDataSet = new DataSet();//创建一个DataSet
                    myConn.Open();                OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn);//用OleDbDataAdapter 得到一个数据集                myCommand.Fill(myDataSet, "socut_user");//把Dataset 绑定socut_user 数据表                myConn.Close();//关闭此OleDbConnection                myBind = this.BindingContext[myDataSet, "socut_user"];            }
                catch (Exception e)
                {
                    MessageBox.Show("连接错误! " + e.ToString(), "错误");
                }
      

  3.   

    你的写法不习惯,这也写试下。
    OleDbConnection Conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=LZAwsDB.mdb");
    string sql="Select * From 水位库容 where 水位 ='" + this.textBox1.Text + "'";
    OleDbCommand Comm = new OleDbCommand(sql, Conn);
    然后OleDbDataAdapter oda=new  OleDbDataAdapter(Comm);
    然后再按照你的写 实在不行 项目发过来 亲自给你调试。521070107 王永鹏
      

  4.   

    运行之后还是dataGridView1中所有的数据,不是我要查找的数据显示
      

  5.   

    string strSql = "Select * From 水位库容 where 水位 ='" + this.textBox1.Text + "'";
    在这句加个断点看看显示的是什么查询结果,再调试调试
      

  6.   

    在后面再绑定一次。
     string strSql = "Select * From 水位库容 where 水位 ='" + this.textBox1.Text + "'";
      aConnection.Open();  
      OleDbDataAdapter dadapter = new OleDbDataAdapter();
      dadapter.SelectCommand = new OleDbCommand(strSql, aConnection);
      DataSet dset = new DataSet();
      dadapter.Fill(dset);
      aConnection.Close();
      dataGridView1.DataSource = dset.Tables[0];
      dataGridView1.DataBind();
      

  7.   

    我也有同样的问题,异常显示:adapter.fill()至少有一个参数未被指定。我编的是winform项目。
    这是我的代码如下:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Data.OleDb;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    public partial class Form2 : Form
        {
            
           // private OleDbDataAdapter dataAdapter;
            public Form2()
            {
                InitializeComponent();
            }        private void Form2_Load(object sender, EventArgs e)
            {
              
            }
            private void button1_Click(object sender, EventArgs e)
            {
               
                string strtxt = textBox1.Text.ToString().Trim();
                string sql = "select * from nsrxxb where nsrname='strtxt'";
                OleDbConnection objConnection = new OleDbConnection(@"Provider=Microsoft.Jet.OleDb.4.0;Data Source=D:\\My Documents\\Visual Studio 2005\\Projects\\WindowsApplication4\\WindowsApplication4\\GuoShuiJu.mdb");//建立连接
                objConnection.Open();//打开连接
                OleDbDataAdapter adapter = new OleDbDataAdapter(sql,objConnection);
                DataSet dataset = new DataSet();
                ADODB.Recordset adoRS = new ADODB.Recordset();
                adapter.fill(dataset,adoRS,"nsrxx");
                dataGridView1.DataSource = dataset.Tables["nsrxxb"];
               
            } 
      

  8.   

    string strtxt = textBox1.Text.ToString().Trim();
      string sql = "select * from nsrxxb where nsrname='"+strtxt+"'";//这句错
      OleDbConnection objConnection = new OleDbConnection(@"Provider=Microsoft.Jet.OleDb.4.0;Data Source=D:\\My Documents\\Visual Studio 2005\\Projects\\WindowsApplication4\\WindowsApplication4\\GuoShuiJu.mdb");//建立连接
      objConnection.Open();//打开连接
      OleDbDataAdapter adapter = new OleDbDataAdapter(sql,objConnection);
      DataSet dataset = new DataSet();
      //ADODB.Recordset adoRS = new ADODB.Recordset();//不须要ADODB.Recordset 这句删除
      adapter.fill(dataset,"nsrxx");这句改
      dataGridView1.DataSource = dataset.Tables["nsrxxb"];
      

  9.   

    应该是少个
     dataGridView1.DataBind();