★定期自动删除数据库中多余的记录,压缩数据库问题?

tnswy 2003-08-19 10:55:16
谢谢您的关注!
数据库中有一表结构如下:

数据字段 录入时间 保留时间

现在想根据保留的时间来删除这一表中的记录,如:如果保留时间为3天,则以录入时间为准,把表中三天前的记录都删除掉。用什么方式实现比校好?
还有删除了后,怎么减少日志文件和数据库文件的大小?
谢谢。
...全文
37 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tnswy 2003-08-19
  • 打赏
  • 举报
回复
谢谢各位的热情解答。
关键是保留天数不是固定的呀,也要从表中获取的。
还有就是怎么压缩数据,减少日志文件的大写呢?
txlicenhe 2003-08-19
  • 打赏
  • 举报
回复
create procedure test
As
delete from yourtable where datediff(dd,录入时间,保留时间)>3

在新建一个作业运行该存贮过程即可。
yijiayi 2003-08-19
  • 打赏
  • 举报
回复
delete from yourtable where datediff(dd,寻入时间,保留时间)>3
hjb111 2003-08-19
  • 打赏
  • 举报
回复
企业管理器->数据库->右键此属性->数据文件与事务日志文件中分配空间中修改可用空间大小
CrazyFor 2003-08-19
  • 打赏
  • 举报
回复
delete from yourtable where datediff(dd,寻入时间,getdate())>保留时间

再用JOB。

是添加一个作业,


企业管理器-》管理-》sql server代理(要启动服务)-》作业

新建一个作业添上上面的语句就可以了。
hjb111 2003-08-19
  • 打赏
  • 举报
回复
delete from yourtable where datediff(dd,寻入时间,保留时间)>3

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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