@smash_wp

Как правильно спарсить данные и записать их в БД?

Данные парсяться, в БД знаю как записать. Вопрос вот в чем. Данные будут парситься время от времени. Т. е. будут новые записи, также будут записи, которые уже есть в базе, но у них информация в какой-то отдельной колонка поменялась.

Так вот как мне правильно реализовать/проверить, это новая запись и просто добавить её в таблицу, или же эта запись (по id) уже есть в базе и просто обновить её данные?

Буду очень благодарен.
  • Вопрос задан
  • 597 просмотров
Решения вопроса 1
syschel
@syschel
freelance/python/django/backend
Ищешь уникальное значение (поле) которое есть у всех записей. По нему и сравниваешь. Если в базе есть с таким значением в этом поле запись - обновляем, если нет то создаём. В базе можно даже принудительно сделать данное поле уникальным, что бы ругалось при дублях.

З.Ы. Не плохо бы указывать и базу данных и тип данных (хотя бы откуда они берутся), для нормального ответа, а не угадывания мыслей..
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@entermix
Данные парсяться, в БД знаю как записать.

А получить строку по ID и проверить перед записью? В чем проблема?

P.S. Можно сделать поле idуникальным в таблице и выполнять INSERT ... ON DUPLICATE KEY UPDATE
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы