如何在数据库内部实现“限时置顶”功能

wwwfuzheng 2009-04-08 11:24:53
请问高手 SQLserver2000中如何在数据库内部实现“限时置顶”?
描述:比如置顶的权限是01 普通的权限是02
如何在3天后自动把01变为02呢?
谢谢高手!!!
...全文
152 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ai_li7758521 2009-04-09
  • 打赏
  • 举报
回复
写个每天执行的JOB
update a 
set 权限='02'
from tableName
where datediff(d,日期,getdate())>3 and 权限='01'
子陌红尘 2009-04-09
  • 打赏
  • 举报
回复
企业管理器
--管理
--SQL Server代理
--右键作业
--新建作业
--"常规"项中输入作业名称
--"步骤"项
--新建
--"步骤名"中输入步骤名
--"类型"中选择"Transact-SQL 脚本(TSQL)"
--"数据库"选择执行命令的数据库
--"命令"中输入要执行的语句:
update 表名 set 权限字段='02' where 权限字段='01' and datediff(d,日期字段,getdate())>=3
--确定
--"调度"项
--新建调度
--"名称"中输入调度名称
--"调度类型"中选择你的作业执行安排
--如果选择"反复出现"
--点"更改"来设置你的时间安排


然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行

设置方法:
我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定.
mugua604 2009-04-09
  • 打赏
  • 举报
回复
JOB

update a set 权限='01' from tableName where datediff(d,日期,getdate())>3
ks_reny 2009-04-09
  • 打赏
  • 举报
回复
写个job,每天执行。
执行的语句如下

update T
set 权限=‘02’
where datediff(d,置顶日期,getdate())>3

wwwfuzheng 2009-04-09
  • 打赏
  • 举报
回复
谢谢各位 以为还有别的方法 看来是没了 那就写Job吧 呵呵
  • 打赏
  • 举报
回复
使用job,调度时间为间隔3天。
update tb
set 权限='01'
where 权限='02'
taoistong 2009-04-08
  • 打赏
  • 举报
回复
写个JOB吧,
数据表中存储置顶日期,
每天更新这个日期判断是否三天前来更新下数据。

22,181

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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