Я новичок в MYSQL, я работаю над модулем сообщений. моя структура таблицы такова.Структура таблицы
Message => идентификатор, сообщение, созданное
MessageUser => идентификатор, message_id, receiver_id, sender_id, is_read
User => идентификатор, имя пользователя, адрес электронной почты
sender_id и receiver_id ассоциировать с пользователем .id и message_id связаны с Message.id
Когда я выполняю запрос для моего почтового ящика, я помещаю условие (WHERE receiver_id = $ param); То же, что и для моего состояния отправленного товара (WHERE sender_id = $ param);
его рабочего fine.but проблема occoured когда я удалить сообщение из моего почтового ящика или отправленных сообщений
bcoz я выполнить мой запрос на удаление по UserMessage таблице.
, когда это сообщение удаляется из моего отправленного окна, оно также удаляется из папки «Входящие» другого пользователя.
У меня 2 soloutions
. Добавьте другой столбец is_delete и установите его значение в зависимости от удаления со стороны приемника или отправителя.
. разделите таблицу MessageUser на две таблицы: Sender => id, message_id, sender_id; Receiver => id, message_id, receiver_id, is_read;
Позвоните мне, что лучше solloution. а также рассказать мне еще solloutions
Спасибо заранее пожалуйста ответ быстро
Из перечисленных вами двух вариантов: вариант 2 лучше, потому что вариант 1 не соответствует указанным требованиям: вам нужно добавить 2 столбца в вариант 1: один для Sender_Deleted, один для Receiver_Deleted. Тем не менее, я предполагаю, что всегда есть 1 отправитель и 1 приемник. Может ли быть 1 отправитель и много приемников? – xQbert
да может быть 1 отправитель и несколько приемников .. – Ahsan