数据恢复寻找时间戳

DECLARE
ct NUMBER;
dt varchar2(200);
BEGIN
dt:=’’;
FOR d IN 21 … 21 LOOP – 日期
FOR h IN 15 … 18 LOOP --小时
FOR m IN 0 … 59 LOOP --分钟
FOR s IN 0 … 59 LOOP --秒
BEGIN
IF not (s=0 or s=30 ) THEN --每隔30s检查
continue;
END IF;
dt:=‘2015-09-’||lpad(to_char(d),2,0)||’ ‘||lpad(to_char(h),2,0)||’:’||lpad(to_char(m),2,0)||’:’||lpad(to_char(s),2,0);

            BEGIN
                select count(*) into ct from AAA as of timestamp to_Date(dt, 'yyyy-mm-dd hh24:mi:ss');  --AAA是要检查的表
            EXCEPTION
               WHEN NO_DATA_FOUND THEN
                  null;
               WHEN OTHERS THEN
                  null;                   
            END;
           
            IF ct is not null THEN
              DBMS_OUTPUT.PUT_LINE(dt||'------'||to_char(ct));
            END IF;
           END;
           END LOOP; 
       END LOOP;  
   END LOOP;  

END LOOP;
EXCEPTION
WHEN NO_DATA_FOUND THEN
raise;
WHEN OTHERS THEN
raise;
END;
–找到时间点后,修改下面的SQL ,恢复数据到临时的表中,检查确认正确后,导入到正式表中
–create table AAA164950 as select * from AAA as of timestamp to_Date(‘2015-09-21 16:49:50’, ‘yyyy-mm-dd hh24:mi:ss’)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值