数据库记录的删除,delete好还是update好?

1384 查看

个人认为还是使用Update比较好。
经过一些测试,发现几乎所有数据库使用delete语句后,数据库文件大小并没有变小,以致数据库的每次插入操作,都会使数据库体积变大。

与其删不掉,还是让他留着吧。发现使用Update的时候,只要新的数据不比原来的大,数据库体积就不会增大(文件存到数据库很容易看出效果)。

所以个人建议使用Update方式标记删除记录,添加新记录的时候如果存在标记为删除的记录,则更新该条记录为新记录。添加新记录时的判断也比较简单:

复制代码 代码如下:
rs.Open "select * from tableName where deleted=1 order by ID asc" 
If rs.EOF Then rs.AddNew 
rs(1).Value="..."; 
'..... 
rs.Update 

我们需要添加新数据时,先查询有没有标记为删除的数据,如果没有(rs.EOF)则插入记录(addNew),否则将新数据覆盖掉第一条查询到的记录。