@ssrdop

Как правильно поступить при вставке из csv в mysql c помощью php из формы?

Мне необходимо вставить в имеющуюся таблицу товаров данные из полученного csv файла, который в свою очережь получен из формы. Причем вставить новое поле, если идентификатор товара не найден, и обновить информация в противном случае. Тут можно использовать, например "INSERT INTO ON DUPLICATE KEY UPDATE". Можно использовать LOAD DATA INFILE, но тут проблема с безопасностью. Во многих статьях я нашел способ делать для каждого поля запрос в цикле, но это n запросов и подключений. Я подумал, что можно в php сделать строку в которую буду накапливать для каждого поля свой запрос и после с помощью одного запроса сразу все вставить. Но тут тоже проблема - если 10000 товаров то это будет огромный объем переменной. Что скажите по этому поводу?
  • Вопрос задан
  • 97 просмотров
Решения вопроса 1
@heahoh
Full stackoverflow developer
Можно разбить 1 запрос с 10к товаров на 20 по 500 к примеру, выполнять запросы в контексте транзакции.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы