条件删除数据库记录

tztz520 2004-07-26 05:01:36
有一个表,我在添加一条记录进去时,如果记录超过20000条的话,就把最旧的一条或多条删除掉(只剩下20000条).
我现在的做法是:先判断有多少条记录,如果超过了就删掉,随后再把那条新的记录添加进来.(每添加一条记录就判断一次,好烦呀)

我想问:有什么更好的办法,比如说一个语句就可搞定

...全文
130 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tztz520 2004-07-26
  • 打赏
  • 举报
回复
一定要在添加新记录的时候删除.因为添加的时候是自动触发了,有可能一两分钟就添回几千条记录的.
online 2004-07-26
  • 打赏
  • 举报
回复
dim i as integer
rs.open "select count(*) as ll from table",conn,1,3
i=rs.fields("ll")
...这里进入插入的循环体内
if i>20000 then
delete top 1 from table1 order by sj desc
conn.execute "insert into..."
i=i+1
else
conn.execute "insert into..."
i=i+1
end if

这样避免了每次插入前判断,可能好一些
cqm2099 2004-07-26
  • 打赏
  • 举报
回复
一个循环加判断就可以搞定的!~
victorycyz 2004-07-26
  • 打赏
  • 举报
回复

如果20000条这个限制不是很严格的话,可以把删除的工作交给计划任务去完成。

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧