当前位置: 首页 > 图文教程 > 网络编程 > ASP > 数据库记录的删除,delete好还是update好?

ASP
在Vista IIS 7 中用 vs2005 调试 Web 项目的注意事项
ASP保存远程图片到本地 同时取得第一张图片并创建缩略图的代码
ASP运行在IIS6 500错误解决办法
ASP 精华源码收集(五年总结)
ASP分页类(支持多风格变换)
动网论坛验证码改进 加法验证码(ASPJpeg版)
asp 存储过程分页代码
asp select下拉菜单选择图标并实时显示
aspjpeg组件通用加水印函数代码
aspjpeg 添加水印教程及生成缩略图教程
ASP 根据用户权限判断显示的列标题
asp 批量删除选中的多条记录
asp 隐藏并修改文件的最后修改时间
Discuz!NT 论坛整合ASP程序论坛教程
ajax+asp无限级分类树型结构(带数据库)
asp 由动态网页转变为静态网页的实现代码
通过表单的做为二进制文件上传request.totalbytes提取出上传的二级制数据
ASP 使用三层架构 asp中使用类
ASP GetRef 函数指针试探
ASP 三层架构 Error处理类

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 272 ::
收藏到网摘: n/a

个人认为还是使用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),否则将新数据覆盖掉第一条查询到的记录。