小编Guy*_*akz的帖子

电子邮件或私人消息的良好数据库设计

现在,我正在为我的网站使用消息系统.该消息用于在站点成员之间发送消息.它也可以用来发送友情邀请等.但是,我还没有找到一个好的数据库设计.我希望消息系统使用线程样式,就像电子邮件一样.但由于我不是复杂数据库设计的专家,我无法想象如何做到这一点.

到目前为止,这是我的设计,

CREATE TABLE messages (
  message_id            BIGINT      PRIMARY KEY,
  message_date_time     TIMESTAMP   DEFAULT NOW(),
  message_subject       TEXT,
  message_body          TEXT,
  message_attachment    TEXT, -- path to attachment folder
  message_sender_id     INT, -- FK to table user
  message_sender_status INT, -- 0 = deleted by sender, 1=default (can be seen on sender outbox)
);
Run Code Online (Sandbox Code Playgroud)

和另一张桌子......

CREATE TABLE message_recipients (
  message_id               BIGINT, -- FK to table messages
  message_recipient_id     INT,    -- FK to table user
  message_recipient_status INT,    -- 0=deleted from recipient inbox, 1=new message, 2=read
); …
Run Code Online (Sandbox Code Playgroud)

database-design

5
推荐指数
1
解决办法
3451
查看次数

标签 统计

database-design ×1