想实现很简单的一个插入,可是,当次插入,打开DEBUG里的那acess文件的话,可以看到插入的纪录,但是,倘若我再实行一次插入的话,新的那条纪录就会代替原来的这条纪录了。。并且,如果要将这条我写入的数据是读不出来。我在想我可能是只把它写到了dataset里,而没有写到数据库里.那要怎么样?才能将其写入数据库呢?下面是我的代码: private void button1_Click(object sender, EventArgs e)
        {
            Myconnection();
         
            Mycom.CommandText = "insert into [实例_耕地质量评价] (地形权重,排水条件权重) values ('" + qbox1.Text + "' ,'" + qbox2.Text + "')";
                      int val = Mycom.ExecuteNonQuery();
            if (val > 0)
            { MessageBox.Show("保存成功"); }
            else
            { MessageBox.Show("保存不成功"); }
        }
 public void Myconnection()//连接数据库
        {
            string mystring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=pyproject.mdb";
            try
            {
                Mycon = new OleDbConnection(mystring);
                Mycon.Open();
                Mycom = new OleDbCommand();
                Mycom.Connection = Mycon;
                Mycom.CommandType = CommandType.Text;
            }
            catch (OleDbException OleDb)
            { MessageBox.Show(OleDb.Message); }
        }

解决方案 »

  1.   

    感觉代码没有什么问题,sql server中数据库主键相同的话新增不进去的,可以检查主键。(初学者,关注中)
      

  2.   

    是LZ我。。
    我发现了一个问题,我在做之间,是先“添加数据源”,然后把那个acess添加进来的,这样子,在工程文件下有一个acess文件,在debug文件夹也有一个。。每一次插入操作完成后,打开工程文件下的那个acess,里面是没有任何更新的,打开debug文件,才能看到有更新
    而且,我发现,如果我把debug文件夹里面的那个acess文件打开,加入一条新纪录,然后再用代码去访问那条纪录,是访问不到的。
    有点晕了大家帮帮忙啊