Board logo

标题: [已解决]100元求助SQL server执行批处理 [打印本页]

作者: ryuenkyo    时间: 2019-3-5 13:14     标题: [已解决]100元求助SQL server执行批处理

本帖最后由 ryuenkyo 于 2019-3-5 14:49 编辑

有个社会问卷调查,想逻辑删除12个月以后文件,逻辑删除之后再过6个月物理删除 - 日期计算是系统日期,算出六个月前和一年前的日期,然后输出日志。
日志文件指定位置D:\survey\delete.log

1.逻辑删除的实施
在SURVEY_INFO 表中更新符合以下条件的数据
SELECT SURVEY_NO  FROM SURVEY_INFO WHERE DEL_F_L_G != 1  AND UPDATE_DATE <= dateadd( YEAR,- 1, getdate());
更新逻辑删除
UPDATE SURVEY_INFO SET DEL_F_L_G = 1, DELETE_DATE = GETDATE(), DELETE_USERID = 'system', UPDATE_DATE = GETDATE(), UPDATE_USERID = 'system'  
WHERE DEL_** != 1  AND UPDATE_DATE <= dateadd( YEAR,- 1, getdate());

2.物理删除的实施
从SURVEY_INFO 表检索物理删除对象问卷。
SELECT SURVEY_NO FROM SURVEY_INFO WHERE DEL_F_L_G = 1  AND DELETE_DATE <= dateadd( MONTH,- 6, getdate());
物理删除
DELETE FROM SURVEY_INFO WHERE DEL_F_L_G = 1 AND DELETE_DATE <= dateadd(MONTH,- 6, getdate());

3.将物理删除成功/失败的问卷记录文件输出到delete.log

稍微有点复杂,希望大神帮帮忙,谢谢
作者: ryuenkyo    时间: 2019-3-5 13:17

**为何被屏蔽?
作者: ryuenkyo    时间: 2019-3-5 13:17

F_L_G为何被屏蔽?
作者: Batcher    时间: 2019-3-5 13:59

参考:批处理自动操作数据库
https://mp.weixin.qq.com/s/QxbMDwWiuWJIBublB1Dp9A
作者: Batcher    时间: 2019-3-5 14:01

回复 3# ryuenkyo


    某邪教组织的拼音首字母
作者: ryuenkyo    时间: 2019-3-5 14:49

感谢版主大大!




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2