研究好久的问题,总找不合适的结决方案,请各位高手再次指点指点
具体问题如下:
前提:有两个数据库A和B,其库结构完全相同,其中大概有近100个表,包含主键或自增列以及blob字段。有些自增列同时也是主键,有些自增列被作为外键使用
要求:将A库中的数据导入到B库中,对于B库中已被导入的数据,也就是旧数据不再导入
困难:1.如何区分新旧数据;2.对于B库,用户可能会执行插入、删除及修改操作,这些操作可能会影响主键或自增列,因此又给导入数据带来了困难:可能会导致主键重复或自增列重复进而出错
本人曾经在本栏发过寻求该问题解决方法的帖子http://community.csdn.net/Expert/topic/4997/4997924.xml?temp=.9609033,各位高手也给予了解答和帮助,在这里非常感谢大家!!但解决上述问题仍存在困难,还请大家再帮帮忙,谢谢!!
受大家的启示我的思路:为每个表增加一时间字段,用于记录导出数据的时间以区分新旧数据。动态创建数据管道实现数据导入。
困难:1.数据管道对象中去没有合适的地方将导出时间写入刚才新增的时间字段中;2.对于用户在B库中新增或修改的记录会导致自增列以及主键的重复,为新旧数据的区分有带来了困难