MSSQL作业问题,怎么实现每年1月1日执行一次

xxlgui 2006-07-26 10:12:42
大家都知道SQL Server里可以写作业,也可以反复执行,

但我刚才去看,他的最大的限度是一个月,但是我要每年的一时间触发怎么办?

我的意思就是说怎么使表中的年龄在每年的1月1日增加1呢?

请指教,谢谢
...全文
572 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xxlgui 2006-07-26
  • 打赏
  • 举报
回复
谢谢...

好像明白了一点..

试试先

九斤半 2006-07-26
  • 打赏
  • 举报
回复
create table test
(rsserialno char(5),
employeename varchar(20),
birthdate datetime)

insert test(rsserialno,employeename,birthdate)
SELECT 'RS001','ZHANG','1975-8-1'
UNION ALL SELECT 'RS002','LI','1984-1-3'
UNION ALL SELECT 'RS003','WANG','1980-6-23'

SELECT * FROM TEST

select rsserialno,employeename,birthdate,datediff(mm,birthdate,getdate())/12 as 年龄 from test

DROP TABLE TEST


--吃饭了!
xxlgui 2006-07-26
  • 打赏
  • 举报
回复
不错.企业管理器是很方便,我也学过几天Oracle,感觉跟着MS走的都比较人性化的..很容易操作,

但是现在就是如我所说,不能操作到年份,所以求助!!
xxlgui 2006-07-26
  • 打赏
  • 举报
回复
datediff这函数我会用,说实话到现在我都没搞懂视图来干嘛!!

小弟不懂,我感觉视图就是用来查询的(说错了不要见怪),怎么用来更新数据呢?

云中客 2006-07-26
  • 打赏
  • 举报
回复
在企业管理器中很容易实现,都是界面化操作
九斤半 2006-07-26
  • 打赏
  • 举报
回复
你Google一下SQL Datediff函数
关键字:SQL Datediff
xxlgui 2006-07-26
  • 打赏
  • 举报
回复
楼上的意思能说明白些吗?

建一个视图后再怎么做,曾经有个人给我说过用视图,但是我没懂得原理,用视图怎么做?

谢谢了
九斤半 2006-07-26
  • 打赏
  • 举报
回复
大家都知道SQL Server里可以写作业,也可以反复执行,
但我刚才去看,他的最大的限度是一个月,但是我要每年的一时间触发怎么办?

我的意思就是说怎么使表中的年龄在每年的1月1日增加1呢?---------------

请指教,谢谢
-------------------------------------------------------------------
晕,如果单是年龄增长的话干嘛要作业?写个视图就OK啦,
按你的要求就是得到年,'年-01-01'与出生日期的差值
很少见你这样求日期的?应该是年月日与出生日期的差值啊!!!
xxlgui 2006-07-26
  • 打赏
  • 举报
回复
谢谢楼上的回答,这种方法只能实现我是在1月1日添加的任务.

假设我现在把该作业添加到SQL中,设置为13个月,这样的话只有到明年的这个时候才会执行该操

作,无法达到我的要求,每年的1月1日执行.

期待您的下一步讲解

QQMagicer 2006-07-26
  • 打赏
  • 举报
回复
选择每月,然后选择每几个月发生一次,可以选择13个月以上

34,836

社区成员

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

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