try
            {
                OleDbConnection ds = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0" + ";Data Source=H:\\c#\\图表\\实时历史信息表.mdb");
                ds.Open();
                OleDbCommand comd = new OleDbCommand();
                comd.Connection = ds;
                comd.CommandText = "INSERT INTO 历史信息表(EquID,EquLastOperate,PeoSim,PeoName,EquLastOperateStartTime,EquLastOperateEndTime,EquStolenNumber)VALUES('" + IDtextBox.Text + "','" + LastOperatetextBox.Text + "','" + PeoSimtextBox.Text + "','" + PeoNametextBox.Text + "','" + LastOperateStartetextBox.Text + "','" + LastOperateEndtextBox.Text + "'," + StolenNumbertextBox + ")";
                                               comd.ExecuteNonQuery();
                                ds.Close();                         }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                MessageBox.Show("添加失败");
             
            }
            finally
            {
               
            
            }
老是出现查询值的 数目与目标字段中的数目不同
各位大侠给小弟解答下
下地感激不尽

解决方案 »

  1.   

     comd.CommandText = "INSERT INTO 历史信息表(EquID,EquLastOperate,PeoSim,PeoName,EquLastOperateStartTime,EquLastOperateEndTime,EquStolenNumber)VALUES('" + IDtextBox.Text + "','" + LastOperatetextBox.Text + "','" + PeoSimtextBox.Text + "','" + PeoNametextBox.Text + "','" + LastOperateStartetextBox.Text + "','" + LastOperateEndtextBox.Text + "'," + StolenNumbertextBox.Text + ")";
      

  2.   


    //对你的代码的一些建议:
    try
      {
      OleDbConnection ds = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0" + ";Data Source=H:\\c#\\图表\\实时历史信息表.mdb");
      ds.Open();
      OleDbCommand comd = new OleDbCommand();
      comd.Connection = ds;
      comd.CommandText = "INSERT INTO 历史信息表(EquID,EquLastOperate,PeoSim,PeoName,EquLastOperateStartTime,EquLastOperateEndTime,EquStolenNumber)VALUES('" + IDtextBox.Text + "','" + LastOperatetextBox.Text + "','" + PeoSimtextBox.Text + "','" + PeoNametextBox.Text + "','" + LastOperateStartetextBox.Text + "','" + LastOperateEndtextBox.Text + "'," + StolenNumbertextBox.Text + ")"; 
          if(comd.ExecuteNonQuery()>0)  //1.此处添加判断
    {
    MessageBox.Show("添加成功");}
    else
    {
    MessageBox.Show("添加失败");}
      //ds.Close();  2.此句放到finally{}里去      }
      catch (Exception ex)
      {
      MessageBox.Show(ex.Message);
      MessageBox.Show("添加失败");
        
      }
      finally
      {
        ds.Close();
        
      }
      

  3.   

      各位 还显示INSERT INTO 有语法错误
      

  4.   

    StolenNumbertextBox最后一项,不用加.Text吗?
      

  5.   

    comd.CommandText = "INSERT INTO 历史信息表(EquID,EquLastOperate,PeoSim,PeoName,EquLastOperateStartTime,EquLastOperateEndTime,EquStolenNumber)VALUES('" + IDtextBox.Text + "','" + LastOperatetextBox.Text + "','" + PeoSimtextBox.Text + "','" + PeoNametextBox.Text + "','" + LastOperateStartetextBox.Text + "','" + LastOperateEndtextBox.Text + "'," + StolenNumbertextBox.Text + ")";
    检查数据类型,String.Format参数化
    或oleDBparameter
      

  6.   

    实时历史信息表.mdb  不是历史查询表
      

  7.   

       实时历史信息表.mdb 里面有两个表 包含有历史查询表
      

  8.   

    "查询值的数目与目标字段中的数目不同",这是数据操作时常常出现的错误。意思是说:你指定的列名与给定的 value 的个数不匹配,只要出现这种不匹配,系统就无法进行数据操作了。列名多余 value 的个数,多余的数据从哪里来?value 的个数多余列名,多出来的数据放在哪里?