Я хочу делать дампы MySQL каждую ночь. У меня уже есть решение для вывода только различий данных, но мне нужен способ импортировать данные обратно в MySQL, чтобы данные в MySQL ОБНОВЛЯЮТСЯ, а не ВСТАВЛЯЮТСЯ, если они уже есть. Например, вот примерная таблица:
Id | User | Account_Value | Created_At | Updated_At
1 | Bob | $100 | 2009-01-01 | 2009-01-01
2 | Ed | $200 | 2009-01-01 | 2009-01-01
На следующий день таблица выглядит так:
Id | User | Account_Value | Created_At | Updated_At
1 | Bob | $50 | 2009-01-01 | 2009-01-02
2 | Ed | $200 | 2009-01-01 | 2009-01-01
Когда я выполняю экспорт данных на второй день, он правильно выводит что-то вроде:
INSERT into ACCOUNTS VALUES (1,'Bob', '$50', '2009-01-01', '2009-01-02')
Однако это будет противоречить тому, что уже есть. Я хочу, чтобы он перезаписал то, что уже есть. Мысли?
Вы можете добавить условие «при обновлении дублирующего ключа» в операторы вставки:
http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html