MySQL:更新JIRA里issue的创建和更新时间

平哥为了清理JIRA服务器里的灰尘,做了关机和重启的操作。但是服务器的CMOS电池没电了,所以重启以后时间变成了2005年8月的一个时期。这一问题的影响就是最近几天新建和更新的bug的日期都是不对的。今天对这些有问题的bug进行了日期的更新:

1. 查找受到影响日期有问题的纪录:

 

SELECT ID,pkey,PROJECT,CREATED, UPDATED FROM jiraissue 
WHERE CREATED < DATE('2006-01-01') OR UPDATED < DATE('2006-01-01')
ORDER BY ID;


2. 计算正确日期和问题日期间的差距:结果是2261天,不过有13个半小时的差距,最后的差距结果应该是2260天13个半小时

 

SELECT DATEDIFF('2005-08-26 19:30','2011-11-04 9:00') AS diff;


3. 拼写出更新的语句,在一条记录上做测试:

 

UPDATE jiraissue
set CREATED = DATE_ADD(CREATED,INTERVAL '2260 13:30:00' DAY_SECOND)
WHERE ID =13616;
SELECT ID,pkey,PROJECT,CREATED, UPDATED FROM jiraissue where ID=13616;

检查没有问题

4. 针对所有有问题的记录运行更新语句

UPDATE jiraissue
set CREATED = DATE_ADD(CREATED,INTERVAL '2260 13:30:00' DAY_SECOND)
WHERE PROJECT IN (10131, 10100) 
AND CREATED <DATE('2006-01-01');

 

UPDATE jiraissue
set UPDATED= DATE_ADD(UPDATED,INTERVAL '2260 13:30:00' DAY_SECOND)
WHERE PROJECT IN (10131, 10100) 
AND UPDATED <DATE('2006-01-01');


 

5.检查结果

SELECT ID,pkey,PROJECT,CREATED, UPDATED FROM jiraissue 
WHERE CREATED < DATE('2006-01-01') OR UPDATED < DATE('2006-01-01')
ORDER BY ID;

已经没有这样的记录了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值