我有兩個表,一個是新數據,另一個是舊數據。Diffing and Synchronizing 2 tables MySQL
我需要找到兩個表之間的diff
,並且只會將生成中的舊數據推送到表中。
這兩個表在列方面是相同的,只是數據不同。
編輯: 我正在尋找方法只有一個同步
EDIT 2 表中可能有外鍵。
這裏有
- 我不能使用shell實用程序一樣
mk-table-sync
- 我不能使用GUI工具,因爲它們無法實現自動化,如建議here的約束。
- 這需要以編程方式或在數據庫中完成。
- 我在Google App-engine上工作
python
。
目前,我做這樣的事情
OUTER JOIN
S和WHERE [NOT] EXISTS
每個紀錄SQL
查詢比較和推動的結果。
我的問題是
- 有沒有更好的方式來做到這一點?
- 在python中而不是在db中做這個更好嗎?
假設您只需要單向同步:爲什麼不直接完全擦除舊錶並填充新表中的所有數據?數據太多? –
是的,我只想要一種方式同步。 正如我之前所說,它將在生產中,我不能放棄表並取代它,是的它可能有成千上萬的行 – Gautam