定时删除记录?

shenxian6 2010-06-02 02:27:29
如题,程序定期删除表中超过3个月的所有记录

每个月天数可能都不同,有28、30、31,是按30天来算吗?

另外这个触发的程序,是放在所有用户的登录校验文件如checklogin.asp中,还是放在global.asa中?

这个应该怎么做呢?
...全文
92 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
shenxian6 2010-06-03
  • 打赏
  • 举报
回复
感谢各位的帮助!
gingerkang 2010-06-02
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 in0512 的回复:]
帮你写了存储过程代码,将以下代码改一下,然后做为作业,每天00:00:00执行一次就OK了.


VB code

declare @id as int

declare db cursor for
select id from tab1 where datediff(m,时间字段,getdate())>=3
open db
fetch next from db into……
[/Quote]
没有比较用游标了
你的跟
delete from tab1 where datediff(m,时间字段,getdate())>=3
效果一样
按照自然月来删除,执行计划定在每月1号0点执行就好了
in0512 2010-06-02
  • 打赏
  • 举报
回复
帮你写了存储过程代码,将以下代码改一下,然后做为作业,每天00:00:00执行一次就OK了.


declare @id as int

declare db cursor for
select id from tab1 where datediff(m,时间字段,getdate())>=3
open db
fetch next from db into @id
while @@fetch_status = 0
BEGIN
delete from tab1 where id=@id
fetch next from db into @id
end
close db
deallocate db
叫我梁大侠 2010-06-02
  • 打赏
  • 举报
回复
帮忙顶下。。
shenxian6 2010-06-02
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 gingerkang 的回复:]
写job或者计划任务来执行,这样才能比较准确,不建议删除,最好备份成历史数据以备日后查询.
[/Quote]


我做的这个表比较折腾,就是一个站内信的程序。现在的程序好像是等于做了数据保留而未作真正的删除。

我的过程是:发送信件 ---> 选择发送给整个部门 ---> 部门内的所有人的收件箱列表中都可以看到这封信,但是又不能删除这条纪录,数据库内只有这一条纪录要“共享”给所有的相关用户查看;所以当某一用户选择删除后,我设置为将该条纪录类似于打*标,不会再显示在选择删除信件的用户的收件箱中,但依然存在于数据库中---其他未读信件的用户依然可以查看此记录。

这样的一个问题就是,如果该部门内的所有用户,都看过信件了,也都选择删除了,但是实际上这条纪录最终还是存在表中没真正删除。

这样长时间的话,数据库体积越来越大。所以我想能否定期3个月或者6个月,自动删除所有超过时间的信件,无论用户是否已读?
sy_binbin 2010-06-02
  • 打赏
  • 举报
回复
如果使用的SQL数据库的话,可以使用JOB

你可以查下sql数据库的datadiff函数就知道怎么做了
gingerkang 2010-06-02
  • 打赏
  • 举报
回复
写job或者计划任务来执行,这样才能比较准确,不建议删除,最好备份成历史数据以备日后查询.
shenxian6 2010-06-02
  • 打赏
  • 举报
回复
那如何触发程序呢?存储过程不会写。。

那只有放在用户登录的时候主动检验了?
dfpgb 2010-06-02
  • 打赏
  • 举报
回复
都行吧?
lemon520 2010-06-02
  • 打赏
  • 举报
回复
超过3个月就是月份-3,并不一定要精确到30×3天。
另外,既然是定时的程序,就应该跟用户是否登陆没有关系。
shenxian6 2010-06-02
  • 打赏
  • 举报
回复
数据库中n多表,只删除表tab1中与当天相比超过3个月的纪录

28,408

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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