我有一个名为messages的mysql表。它的结构如下

id | sender_id | receiver_id | message | date | is_receiver_read | conversation_id

1  | 99        | 456         | hello   | 2014 | 1                | 99x456

2  | 456       | 99          | hi)     | 2014 | 0                | 99x456


当发送者或接收者从对话中删除消息时,我不想向他显示该对话中的消息。怎么办

当我添加名为“ is_sender_delete”和“ is_receiver_delete”的列时,出现了问题。对于第一个消息发件人是99,但对于第二个消息发件人是456。当我在用户按“删除对话按钮”后更新表时,我应该更新哪一列?

如果此结构不正确,替代解决方案是什么?

最佳答案

我想你需要这样的东西...

CREATE TABLE subscriptions
(user_id INT NOT NULL
,conversation_id INT NOT NULL
,subscribed TINYINT NOT NULL DEFAULT 1
,PRIMARY KEY(user_id,conversation_id)
);

关于mysql - 邮件表,不显示删除者的邮件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21904237/

10-14 18:25