SQL触发器自动删除一个月以前的数据

表dbo.ALARM,列里有个AlarmTime,我要删除一个月以前的告警,触发器我是这么写createtriggerLogDeleteondbo.ALARMfordel... 表dbo.ALARM ,列里有个AlarmTime ,我要删除一个月以前的告警,触发器我是这么写
create trigger LogDelete on dbo.ALARM
for delete
as
delete from dbo.ALARM where AlarmTime《=dateadd(month,-1,getdate())
print ‘Log was delete’
执行的时候没有打印Log was delete ,问题在哪里
展开
 我来答
greystar_cn
2015-10-20 · 知道合伙人软件行家
greystar_cn
知道合伙人软件行家
采纳数:16407 获赞数:17260
本人主要从事.NET C#方向的技术开发工作,具有10多年的各类架构开发工作经验。

向TA提问 私信TA
展开全部
使用PRINT一般是写程序时观察中间结果,对于你说的这种情况,可以直接建个测试表记录日志
追问
我刚刚做了测试,触发器如下:
create trigger Delete2 on dbo.LOG
for delete
As
delete from dbo.LOG where EventTime <= dateadd(d,-15,getdate())
GO

我查看了表单的内容 ,15天前的数据还有 ,请问是哪里出了问题
追答
你为什么用触发器,你想删数据,那可以做个JOB,每天定时删除前面的数据。
写成存储过程,再JOG调这个过程,不更好吗。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式