В Cloud SQL, с движком MySQL, как я могу заменить функциональность LOAD DATA INFILE ... REPLACE?
Мы переносим нашу веб-платформу в Google Cloud с помощью App Engine и Cloud SQL.
Мы используем LOAD DATA INFILE с режимом IGNORE или REPLACE, чтобы импортировать файлы CSV в наши таблицы.
Поскольку инструкция LOAD DATA INFILE не поддерживается в Cloud SQL, как мы можем ее заменить?
Я пытался использовать gcloud sql import csv и Cloud SQL API, но, похоже, опция IGNORE или REPLACE дублирующих данных отсутствует.
Для примера вот таблица, в которую импортируются данные:
C1 | C2 | C3 | C4
-----------------
1 | 2 | 3 | A |
4 | 5 | 6 | B |
7 | 8 | 9 | C |
В этой таблице есть уникальный индекс по столбцам C1 + C2 + C3
Теперь мне нужно импортировать файл CSV, содержащий следующее:
1,2,3,AA
Если бы я использовал LOAD DATA INFILE с опцией REPLACE, таблица после импорта была бы такой:
C1 | C2 | C3 | C4
-----------------
1 | 2 | 3 | AA |
4 | 5 | 6 | B |
7 | 8 | 9 | C |
Итак, я хотел бы получить то же поведение на Cloud SQL либо с gcloud sql import csv, либо с Cloud SQL API.
Нам нужно сделать это программно с PHP.
Возможно или есть другая возможность?
Спасибо