Я пытаюсь вставить ежедневную таблицу в основную таблицу, в которой есть первичные ключи. У меня есть следующая архитектура:
A python сценарии, которые генерируют данные в pandas dataframe-> удаляет ежедневную таблицу -> передает в ежедневную таблицу -> передает данные из ежедневной таблицы в основной стол.
Я не могу удалить основной стол, но я могу удалить ежедневный стол. В настоящее время я использую следующий запрос для выполнения этого:
REPLACE INTO
mydb.{to_table}
SELECT
*
FROM
mydb.{from_table};
, но получаю следующее сообщение об ошибке:
ERROR (1062, "Duplicate entry '2147483647' for key 'PRIMARY'") with sql
REPLACE INTO
mydb.book_authors_v2
SELECT
*
FROM
mybd.books_authors_v2_daily;
Я пытался использовать INSERT ... UPDATE ON DUPLICATE KEY
, но это не удалось заставить его работать.
Есть ли способ вставить новые строки из ежедневной таблицы в основную таблицу и обновить существующие строки в основной таблице? В структуру таблицы вносятся почти ежедневные изменения, и я хотел бы избежать необходимости вручную определять столбцы.