这两天在做一个数据迁移的案子,一个旧的投稿系统要下线了,合并到另一个系统中作为一个模块,涉及到数据的合并操作,因为原来从没接触过类似的操作,这两天可以说是头疼的要命了,尤其是两个系统的表结构完全不一样,中间的转换逻辑很是烦躁。
而今天一下午竟然没点进展,就是因为被困在了一个很初级但是又很隐蔽的问题上。
这次的数据迁移方案因为设计的数据量并不算太大,下线的系统(A)用户表大概5k条,合并的目标系统(B)用户表差不多4w个用户,所以定的方案如下:
1、将两个库先down到本地
2、写一个脚本从A表导出所有数据分表导出到文件中,导出过程不写任何转换逻辑
3、另一个脚本从数据文件中读入数据,每读取一条,做相关表结构转换逻辑,然后插入目标表中
.
.
.
接下来的步骤先不说,就在这第3步的插入操作中,我用的插入语句是从B系统中直接拷过来,然后替换值变量用的,结果出现奇怪的问题,数据插入不成功,打印SQL语句仔细查看没有出现任何错误,将错误报告设置为E_ALL也没有收到任何提示,也许是太过于信任“拷过来”的插入语句,我一直将精力花在自己这边的