sqlserver数据同步到mysql中,但是Mysql中也有一些不能删的数据,主键列会重复,怎么解决重复然后修改主键列的问题?

img


查询是单张表查的。

img


插入语句是这样拼接的。

img


我怎么在这里判断?
老系统数据同步到新系统的时候,就比如student表,新系统里面也有一些试点数据,不能删除。那我从老系统同步过来的时候,老系统和新系统主键列有些数据是一样的。

判断两个系统数据主键列重复的时候,我想把老系统的主键列改变为其他没有的数据,但是主键列不是自增的。我怎么实现啊?

还有就是我把主表主键列相同的数据改了,从表和主表关联的字段也要改了。
怎么解决?

重复与否,不单是主键,而是其它列的数据,特别你还提到自增列。

把老数据不包含主键列,全部迁移过来,在新表里去重就行了。

前两天有一个朋友也跟我提到这个事情。我给他说的解决办法就是,把新表的数据所有id都加旧表的最大id(首先就update新表所有id让新表前面的id空出来,避免id重复)导出旧表数据直接导入到新表。同时记得把新表的主键自增值改为新表的最大id+1

啊啊啊啊