Python 区分和同步2个表MySQL
我有两个表,一个有新数据,另一个有旧数据 我需要找到两个表之间的Python 区分和同步2个表MySQL,python,mysql,google-app-engine,diff,Python,Mysql,Google App Engine,Diff,我有两个表,一个有新数据,另一个有旧数据 我需要找到两个表之间的diff,只将更改与生产中的旧数据一起推送到表中 这两个表在列方面是相同的,只是数据不同 编辑: 我正在寻找唯一的同步方式 编辑2 该表可能有外键 以下是限制条件 我无法使用shell实用程序,如mk table sync 我不能使用gui工具,因为它们不能像建议的那样自动化 这需要通过编程或在数据库中完成 我在Google App engine上使用的是python 目前我正在做类似的事情 OUTER JOINs和其中[NO
diff
,只将更改与生产中的旧数据一起推送到表中
这两个表在列方面是相同的,只是数据不同
编辑:
我正在寻找唯一的同步方式
编辑2
该表可能有外键
以下是限制条件
- 我无法使用shell实用程序,如
mk table sync
- 我不能使用gui工具,因为它们不能像建议的那样自动化
- 这需要通过编程或在数据库中完成
- 我在Google App engine上使用的是
python
s和OUTER JOIN
以比较其中[NOT]存在
查询中的每条记录并推送结果SQL
- 有更好的方法吗
- 在python中这样做比在db中更好吗
DELETE FROM OldTable;
INSERT INTO OldTable (field1, field2, ...) SELECT * FROM NewTable;
正如我在上面指出的,可能有不这样做的原因,例如数据大小。假设您只需要单向同步:为什么不完全擦除旧表并填充新表中的所有数据?数据太多?是的,我只需要单向同步。正如我之前所说的,由于它将投入生产,我不能直接删除表并替换它,是的,它可能有数千行。这对于一个有数千条记录的生产数据库来说是个坏主意,尤其是考虑到它可能有外键。你对我问题的最初答复没有说明这一点。因此,我的解决方案是不可能的。