向Access数据库添加数据----->之前是使用AddNEW添加新的记录的
'-----------------------------------------
Text1.Text = "AAA"
Text2.Text = "BBB"
Text3.Text = "CCC"
Data1.Recordset.addnew
'-----------------------------------------
这样添加新的数据是没有问题,但是如果重新运行程序后,添加第一条记录时候,会覆盖库中的第一条记录,然后才会按照顺序依次加入数据现在我改成
'-----------------------------------------
Data1.Recordset.addnew
Text1.Text = "AAA"
Text2.Text = "BBB"
Text3.Text = "CCC"
Data1.Recordset.update
'-----------------------------------------
这样的话,就正常了,就是不管什么时候添加数据,都是在最后一行之后添加,不会覆盖其他的信息.我想问问我这样改,有错吗?,为什么之前的代码会出现覆盖其他数据的情况??谢谢

解决方案 »

  1.   

    Text1、Text2、Text3 都是绑定的吧?这种情况下,如果您更改了绑定控件的值并移动了记录指针,就会自动更新当前记录。而你打开记录集之后的当前记录就是第一条。addnew 语句使得记录指针离开了当前记录,因此自动更新了。用你现有的方式,最好不要绑定:Data1.Recordset.addnew
    Data1.Recordset.Fields(0) = Text1.Text
    Data1.Recordset.Fields(1) = Text2.Text
    Data1.Recordset.Fields(2) = Text3.Text
    Data1.Recordset.update