我正在我的网站上制作PM系统。我想知道最终的数据库架构。
我一直只用过一张桌子。但是我的用户已经开始抱怨他们的发件箱中的消息突然消失= D,因为如果其他用户删除它,发送它的人就不会看到它。
所以我想要制作另一个具有相同字段的表
所以我想这样的事情:
id | to | from | subject | message | date
-- -- ---- ------- ------- ----
1 76 893 blabla. blabla. 20100404
id | to | from | subject | message | date
-- -- ---- ------- ------- ----
1 76 893 blabla. blabla. 20100404
Whatya认为?
抱歉我的英文不好
编辑:也许我应该删除邮件,只需添加一个名为“已删除”的字段并将其设置为1
答案 0 :(得分:0)
这可以通过一个表来实现。
id | to_id | from_id | subject | message | date | to_deleted | from_deleted
--------------------------------------------------------------------------------
1 | 76 | 893 | blabla. | blabla. | 20100404 | BOOLEAN | BOOLEAN
我的收件箱
SELECT * FROM messages WHERE to_id=<my_id> AND to_deleted = FALSE;
我的发件箱
SELECT * FROM messages WHERE from_id=<my_id> AND from_deleted = FALSE;
可能想要添加和cronjob一次又一次地清理你的消息
DELETE FROM messages WHERE to_deleted=TRUE AND from_deleted=TRUE;
一方面,不是一个好主意,因为这是一个MYSQL关键字,可能会导致错误。