mihail430899
@mihail430899
Вебмастер

Как правильно обновить данные в базе?

Получаю по API с другого ресурса 130 товаров и засовываю их в таблицу в БД. Дальше примерно 1 раз в неделю мне надо делать по новой запрос к API, получать товары и если есть какие-то изменения, то надо и в базе обновить. Вопрос в том как?

Самый простой вариант конечно, это удалить все из таблицы и заполнить ее по новой актуальными данными. Или делать так:
if(кол-во товаров в БД != кол-во полученное от сервера), но это так себе, т.к. к примеру 2 товара может удалиться и 2 добавиться и получается те же 130, но содержимое чуть другое.

Либо еще такой вариант - получить массив данных из БД и сравнить его на эжквивалентность с массивом полученным от API, правда я не знаю есть ли функции, которые это делают (массивы многомерные).
  • Вопрос задан
  • 56 просмотров
Пригласить эксперта
Ответы на вопрос 1
@d-stream
Готовые решения - не подаю, но...
Феншуйно это бы выглядело так:
- временная таблица, куда "всасываются" свежие данные,
- (опционально) некий инструмент визуального контроля корректности данных и сравнения с текущими
- обновление отличающихся (с отметками что именно менять)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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