OleDbConnection conn = new OleDbConnection ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\jwsjk.mdb");
            conn.Open();
            OleDbCommand cmd = new OleDbCommand();
            cmd.Connection =conn;
            cmd.CommandType = CommandType.Text;
            string sql = "select qingtongqi.器名ID ,器名 ,释文 ,时代 ,著录ID  from qingtongqi, tblzhulu  where 释文 like '%" + textBox1.Text.Trim() + "%' and  qingtongqi.器名ID = tblzhulu.器名ID  ";
            DataSet ds = new DataSet();
                       OleDbDataAdapter da = new OleDbDataAdapter(sql,conn);
 da.Fill(ds);
 
            dataGridView1.DataSource = ds.Tables[0];
            dataGridView1.Show();
            conn.Close();
            conn.Dispose();
            cmd.Dispose();
            ds.Dispose();
            da.Dispose();
出现“至少一个参数没有被指定值”的异常

解决方案 »

  1.   

    应该是参数错误了,检查一下select语句中每个字段名字和数据库中是否一致,参数个数是否与函数的形参个数是否一致,也有可能是中英文输入法之间的引号问题,另外还有语法问题比如少了个单引号之类的。
      

  2.   

    有个简单点儿的方法,打个断点,看看你最终生成的sql语句是什么,拿到数据库执行,看看报什么错
      

  3.   

    调试时把sql语句放到查询分析器去试试,看有么错