程序连续2个小时采集数据,每采集到一组数据,就在Access数据库的一个表中添加一条记录,表是程序建立的。采集数据完成后,手动打开数据库的该表,发现里面会有两段数据的位置是互换过的(可以从我定义的序号字段和数据字段看出来)。为什么呢?如何解决?这个现象是有时候出现,有时候不出现的。也就是说有时候数据采集完成后,表是正常的;有时候数据采集完成后,表是不正常的,有2段数据位置互换过;有时候甚至有4段数据位置互换过。这个现象看起来就象:表被人为的剪切粘贴过一样。 

解决方案 »

  1.   

    有两种可能性
    1.你使用了多线程来insert
    2.序号字段和数据字段是否匹配的一条记录,如果匹配,但是打开access看到的序号不是顺序排下来,说明物理存储顺序和序号顺序不一致
    3.序号字段和数据字段是否匹配的一条记录,如果不匹配,说明你的序号算法和insert有问题
    序号的算法是在程序中维护,还是通过取一次表中的最大序号来取得,这个你要说清楚