下面是我用sql server2000 做的插入数据的主要的三行代码,已经稳定运行5年,最近出现了一个特别怪的问题。正常插入的数据都是追加到数据表的最后一行的,但是最近当数据库有一些数据后,插入的数据不再存到数据表的最后一行,而是在表中任意位置随便插入,比如17日的数据插到9日前面几行,然后又插到7日前面几行,而且一点规律也没有。该如何写才能保证新写入的数据在数据表的最后呢?????ConnectionPtr cn m_rtSQL.Format("insert into rt%s%.2d values",m_strPipeCode,m_RTData.oleTime.GetMonth());
cn->Execute((_bstr_t)rtSQL,&vRows,adExecuteNoRecords);
cn->Execute((_bstr_t)rtSQL,&vRows,adExecuteNoRecords);
设置一个自增列 在插入的时候判断ID与最后一个ID相等不 相等就插入 不然就回滚
所谓的显示的行,是根据排序(索引)来定的.
所以,目前你的数据的插入不影响你系统的正常运行.
重新建立一张表,然后建立上聚集索引insert into 新表
select * from 旧表然后把旧表删掉,新标rename