mak_ufo
@mak_ufo

Как правильно обновить/добавить данные, если информация о пользователе есть в другой таблице?

Здравствуйте, такая проблема. Есть две таблицы: plants и users. Связь через один-ко-многим, то есть у ОДНОГО пользователя МНОГО растений. Мне приходит id пользователя и растения. Если в таблице users есть пользователь с таким id, то надо просто добавить в таблицу plants растения, если нет, то надо ещё записать информацию и в таблицу users

Структура такая:
plants
name, id_users

users
id, time

Как правильнее реализовать?
  • Вопрос задан
  • 90 просмотров
Пригласить эксперта
Ответы на вопрос 1
@GremniX
Есть несколько вариантов
1) Просто перед вставкой проверять что такого пользователя уже нет в базе, например Select * From users Where id = $user_id
Если поставить на user_id уникальный индекс, то можно еще и так
2) INSERT INTO user SET column = 1 ON DUPLICATE KEY UPDATE updated_at = $updated_at
3) INSERT IGNORE INTO user ...

Мне лично больше нравится первый вариант, он более предсказуемый.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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