数据差异恢复

本文介绍了两种数据恢复的方法:一是通过程序逻辑控制实现有差异数据的恢复,这种方法在业务存在时处理方便但需要发布程序;二是使用SQL语句,包括创建临时表进行数据加工或直接插入目标表,该方法无需重新发布应用程序且效率高,但容易出错。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据恢复:

方法一:程序逻辑控制,通过编写程序实现有差异数据的恢复,

好处是,有业务存在时,处理很方便;

坏处是,必须要发布程序;

方法二:拼写sql

A:生成临时表,再进行加工

CREATE table temp as SELECT
c.cid id, 
c.cid,
sc.create_time time,
sc.earnest_price price,
c.mid create_person,
'定金' remark,
'normal' dlt,
'-3' sign_remind_id,
NOW() create_time,
'yes' useful,
sc.region
FROM
sign_customer sc
LEFT JOIN customer c ON c.cid = sc.cid
WHERE
c.ctype = 'sign'
B.直接插入到目标表:
INSERT INTO payment_records (
id,
cid,
time,
price,
create_person,
remark,
dlt,
sign_remind_id,
create_time,
useful,
region
) SELECT
c.cid id,
c.cid,
CASE WHEN sc.create_time is null THEN NOW() ELSE sc.create_time END time,
sc.earnest_price price,
c.mid create_person,
'定金' remark,
'normal' dlt,
'-3' sign_remind_id,
NOW() create_time,
'yes' useful,
sc.region
FROM
sign_customer sc
LEFT JOIN customer c ON c.cid = sc.cid
WHERE
c.ctype = 'sign'

Insert into A(C1,C2,...) Select C1,C2,... From B;

优点是,不需要重新发布应用程序,效率很高;

缺点是,容易出错;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未来的我比现在的我更优秀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值