仅为具有一个字段的一个用户删除邮件

时间:2012-02-14 21:26:21

标签: php mysql database

我有一个网站。游客可以注册。每个用户都可以向其他用户发送消息。有进/出箱子。我想当用户从他的盒子中删除一条消息时,另一个用户仍然拥有它。

我的问题是,这只能在表格中只有一个字段吗?

为什么呢? 我想不出好的解决方案。好奇,朋友们!

2 个答案:

答案 0 :(得分:2)

使用一列,流程需要nullable列。

  • NULL表示两者都拥有它们。
  • 如果删除列中该用户ID的UPDATE
  • 当其他用户删除它时 - 您可以DELETE记录。

我强烈建议使用更强大的架构,更少的列不等于更好。

@cwallenpoole有一个很好的例子,试一试。

答案 1 :(得分:1)

有一个包含列的表格" message_id"," direction"和" user_id"使用user_id和message_id的外键(也可能使用枚举或外键作为方向)。当用户删除邮件时,只需删除该数据库中的条目where message_id = $message_id and user_id = $user_id and direction = 'out';

即可